다음을 통해 공유


업데이트 보내기: 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는 업데이트 메서드를 자동으로 호출하여 일괄 처리된 변경 내용을 공급자에게 전송하기 전에 보류 중인 변경 내용을 현재 레코드에 저장합니다.

참고 항목

일괄 처리 모드