次の方法で共有


更新の送信: UpdateBatch

適用先: Access 2013、Office 2013

更新プログラムを送信する: UpdateBatch メソッド

次のコードでは、 LockType プロパティを adLockBatchOptimistic に、 CursorLocationadUseClient に設定することで、 Recordset をバッチ モードで開きます。 2 つの新規レコードを追加し、既存のレコードのフィールドの値を変更して、元の値を保存した後、 UpdateBatch を呼び出して変更をデータ ソースに送信します。

 
'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 

現在のレコードの編集中、または新規レコードの追加中に UpdateBatch メソッドを呼び出すと、変更を一括してプロバイダーに送信する前に、 Update メソッドが自動的に呼び出され、現在のレコードの保留中の変更がすべて保存されます。