Condividi tramite


Proprietà dinamica Resync Command (ADO)

Specifica una stringa di comando fornita dall'utente che viene emessa dal metodo Resync per aggiornare i dati nella tabella denominata nella proprietà dinamica Unique Table.

Impostazioni e valori restituiti

Imposta o restituisce un valore String che è una stringa di comando.

Osservazioni

L'oggetto Recordset è il risultato di un'operazione JOIN eseguita su più tabelle di base. Le righe interessate dipendono dal parametro AffectRecords del metodo Resync. Il metodo Resync standard viene eseguito se le proprietà Unique Table e Resync Command non sono impostate.

La stringa di comando della proprietà Resync Command è un comando o una stored procedure parametrizzata che identifica in modo univoco la riga da aggiornare e restituisce una singola riga contenente lo stesso numero e lo stesso ordine di colonne della riga da aggiornare. La stringa di comando contiene un parametro per ogni colonna chiave primaria nella tabella univoca Unique Table; in caso contrario, viene restituito un errore di run-time. I parametri vengono compilati automaticamente con i valori della chiave primaria della riga da aggiornare.

Ecco due esempi basati su SQL:

1) L'oggetto Recordset è definito da un comando:

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

La proprietà Resync Command è impostata su:

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

La tabella univoca Unique Table è Orders e la relativa chiave primaria, OrderID, è parametrizzata. La selezione secondaria offre un modo semplice per garantire in modo programmatico che lo stesso numero e l'ordine delle colonne vengano restituiti dal comando originale.

2) L'oggetto Recordset è definito da una stored procedure:

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

Il metodo Resync deve eseguire la stored procedure seguente:

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

La proprietà Resync Command è impostata su:

"{call CustordersResync (?)}"  

Di nuovo, la tabella univoca Unique Table è Orders e la relativa chiave primaria, OrderID, è parametrizzata.

Resync Command è una proprietà dinamica aggiunta alla raccolta Properties dell'oggetto Recordset quando la proprietà CursorLocation è impostata su adUseClient.

Si applica a

Oggetto Recordset (ADO)