更新プログラムの送信: UpdateBatch メソッド

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

注釈

'BeginBatchUpdate  
    strConn = "Provider=SQLOLEDB;Initial Catalog=Northwind;" & _  
              "Data Source=MySQLServer;Integrated Security=SSPI;"  
  
    strSQL = "SELECT ShipperId, CompanyName, Phone FROM Shippers"  
  
    Set objRs1 = New ADODB.Recordset  
    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")  
    sPhone = 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 メソッドを呼び出すときに現在のレコードを編集する場合、または新しいレコードを追加する場合、ADO を使用すると、Update メソッドが自動的に呼び出されます。これにより、保留中の変更が現在のレコードに保存されると、バッチ処理された変更がプロバイダーに送信されます。

参照

バッチ モード