Поделиться через


Отправка обновлений: метод UpdateBatch

Следующий код открывает набор записей в пакетном режиме, устанавливая для свойства LockType значение adLockBatchOptimistic и для свойства CursorLocation значение adUseClient. Он добавляет две новые записи и изменяет значение поля в существующей записи, сохраняя исходные значения, а затем вызывает 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, чтобы сохранить все ожидающие изменения текущей записи перед передачей пакетных изменений поставщику.

См. также

пакетный режим