Freigeben über


Senden von Updates: UpdateBatch

Gilt für: Access 2013, Office 2013

Senden der Aktualisierungen: UpdateBatch-Methode

Der folgende Code öffnet ein Recordset im Batchmodus, indem die LockType-Eigenschaft auf adLockBatchOptimistic und cursorLocation auf adUseClient festgelegt wird. Es fügt zwei neue Datensätze hinzu und ändert den Wert eines Felds in einem vorhandenen Datensatz, speichert die ursprünglichen Werte und ruft dann UpdateBatch auf, um die Änderungen an die Datenquelle zurückzusenden.

 
'BeginBatchUpdate 
    strSQL = "SELECT ShipperId, CompanyName, Phone FROM Shippers" 
                  
    objRs1.CursorLocation = adUseClient 
    objRs1.Open strSQL, strConn, adOpenStatic, adLockBatchOptimistic, adCmdText 
     
    ' Change value of Phone field for first record in Recordset, saving value 
    ' for later restoration. 
    intId = objRs1("ShipperId") 
    strPhone = objRs1("Phone") 
     
    objRs1("Phone") = "(111) 555-1111" 
     
    'Add two new records 
    For i = 0 To 1 
        objRs1.AddNew 
        objRs1(1) = "New Shipper #" & CStr((i + 1)) 
        objRs1(2) = "(nnn) 555-" & i & i & i & i 
    Next i 
     
    ' Send the updates 
    objRs1.UpdateBatch 
'EndBatchUpdate 

Wenn Sie den aktuellen Datensatz bearbeiten oder beim Aufrufen der UpdateBatch -Methode einen neuen Datensatz hinzufügen, ruft ADO automatisch die Update -Methode auf, um ausstehende Änderungen am aktuellen Datensatz zu speichern, bevor die Batchänderungen an den Anbieter übertragen werden.