Partager via


Resync Command dynamic property (ADO)

S’applique à : Access 2013, Office 2013

Spécifie une chaîne de commande fournie par l'utilisateur, que la méthode Resync émet pour actualiser les données de la table nommée dans la propriété dynamique Unique Table.

Paramètres et valeurs de retour

Définit ou renvoie une valeur de type String qui représente une chaîne de commande.

Remarques

L’objet Recordset est le résultat d’une opération JOIN exécutée sur plusieurs tables de base. Les lignes affectées dépendent du paramètre AffectRecords de la méthode Resync. La méthode Resync est exécutée si les propriétés Unique Table et Resync Command ne sont pas définies.

La chaîne de commande de la propriété Resync Command est une commande paramétrée ou une procédure stockée, qui identifie de manière unique la ligne actualisée, et renvoie une ligne unique avec un nombre et un ordre de colonnes identiques à celles de la ligne à actualiser. La chaîne de commande doit contenir un paramètre pour chaque colonne de clé primaire dans la propriété Unique Table sans quoi une erreur d'exécution est renvoyée. Les paramètres sont remplis automatiquement avec les valeurs de clé primaire dans la ligne à actualiser.

Voici deux exemples basés sur le langage SQL :

  1. L'objet Recordset est défini par une commande :

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

    La propriété Resync Command est définie comme suit :

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

    La propriété Unique Table a la valeur Orders et sa clé primaire, OrderID, est paramétrée. L'instruction Select secondaire permet de garantir, par programme, le retour du même nombre de colonnes dans un ordre identique à celles renvoyées par la commande d'origine.

  2. L'objet Recordset est défini par une procédure stockée :

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

    La méthode Resync doit exécuter la procédure stockée suivante :

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

    La propriété Resync Command est définie comme suit :

    "{call CustordersResync (?)}"

Une fois encore, la propriété Unique Table a la valeur Orders et sa clé primaire, OrderID, est paramétrée.

La propriété Resync Command est une propriété dynamique ajoutée à la collection Properties de l’objet Recordset lorsque la propriété CursorLocation a la valeur adUseClient.