Resync Command Dynamic Property (ADO)

Gilt für: Access 2013, Office 2013

Es wird eine vom Benutzer bereitgestellte Befehlszeichenfolge angegeben, die von der Resync-Methode ausgegeben wird, um die Daten in der Tabelle, die in der dynamischen Unique Table-Eigenschaft genannt ist, zu aktualisieren.

Einstellungen und Rückgabewerte

Mit dieser Eigenschaft wird ein Wert vom Datentyp String festgelegt oder zurückgegeben, bei dem es sich um eine Befehlszeichenfolge handelt.

Hinweise

Das Recordset-Objekt ist das Ergebnis einer für mehrere Basistabellen ausgeführten JOIN-Operation. Die betroffenen Zeilen hängen vom AffectRecords-Parameter der Resync-Methode ab. Die standardmäßige Resync -Methode wird ausgeführt, wenn die Eigenschaften Unique Table und Resync Command nicht festgelegt sind.

Die Befehlszeichenfolge der Resync Command-Eigenschaft ist ein parametrisierter Befehl oder eine gespeicherte Prozedur, die die zu aktualisierende Zeile eindeutig identifiziert und eine einzelne Zeile zurückgibt, die die gleiche Anzahl und Reihenfolge der Spalten wie die zu aktualisierende Zeile enthält. Die Befehlszeichenfolge enthält einen Parameter für jede Primärschlüsselspalte in der eindeutigen Tabelle. Andernfalls wird ein Laufzeitfehler zurückgegeben. Die Parameter werden automatisch mit Primärschlüsselwerten aus der zu aktualisierenden Zeile ausgefüllt.

Es folgen zwei auf SQL basierende Beispiele:

  1. Das Recordset -Objekt wird durch einen Befehl definiert:

        SELECT * FROM Customers JOIN Orders ON 
        Customers.CustomerID = Orders.CustomerID
        WHERE city = Seattle
        ORDER BY CustomerID
    

    Die Resync Command -Eigenschaft wird festgelegt auf:

     SELECT * FROM 
        (SELECT * FROM Customers JOIN Orders 
        ON Customers.CustomerID = Orders.CustomerID
        city = Seattle ORDER BY CustomerID)
     WHERE Orders.OrderID = ?"
    

    Die Unique Table-Eigenschaft hat den Wert Orders, und der Primärschlüssel, OrderID, ist parametrisiert. Die Unterauswahl ist eine einfache Möglichkeit, um programmgesteuert sicherzustellen, dass die gleiche Anzahl und Reihenfolge von Spalten zurückgegeben wird wie mit dem ursprünglichen Befehl.

  2. Das Recordset -Objekt wird mit einer gespeicherten Prozedur definiert:

        CREATE PROC Custorders @CustomerID char(5) AS 
        SELECT * FROM Customers JOIN Orders ON 
        Customers.CustomerID = Orders.CustomerID 
        WHERE Customers.CustomerID = @CustomerID
    

    Die folgende gespeicherte Prozedur sollte von der Resync -Methode ausgeführt werden:

        CREATE PROC CustordersResync @ordid int AS 
        SELECT * FROM Customers JOIN Orders ON 
        Customers.CustomerID = Orders.CustomerID
        WHERE Orders.ordid  = @ordid
    

    Die Resync Command-Eigenschaft wird festgelegt auf:

    "{call CustordersResync (?)}"

Die Unique Table-Eigenschaft hat wiederum den Wert Orders, und der Primärschlüssel, OrderID, ist parametrisiert.

Resync Command ist eine dynamische Eigenschaft, die an die Properties-Auflistung des Recordset-Objekts angefügt wird, wenn die CursorLocation-Eigenschaft auf adUseClient festgelegt ist.