Envío de las actualizaciones: Método UpdateBatch
El código siguiente abre un objeto Recordset en modo batch configurando la propiedad LockType en adLockBatchOptimistic y la propiedad CursorLocation en adUseClient. Agrega dos registros nuevos y cambia el valor de un campo en un registro existente, guardando los valores originales y, a continuación, llama a UpdateBatch para devolver los cambios al origen de datos.
Observaciones
'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
Si está editando el registro actual o agregando un nuevo registro al llamar al método UpdateBatch, ADO llamará automáticamente al método Update para guardar los cambios pendientes en el registro actual antes de transmitir los cambios por lotes al proveedor.