Метод Recordset.CancelUpdate (DAO)Recordset.CancelUpdate method (DAO)

Область применения: Access 2013, Office 2013Applies to: Access 2013, Office 2013

Отменяет любые незавершенные обновления для объекта Recordset.Cancels any pending updates for a Recordset object.

СинтаксисSyntax

Expression . CancelUpdate (упдатетипе)expression .CancelUpdate(UpdateType)

expression: переменная, представляющая объект Recordset.expression A variable that represents a Recordset object.

ПараметрыParameters

ИмяName

Обязательный/необязательныйRequired/optional

Тип данныхData type

ОписаниеDescription

UpdateTypeUpdateType

НеобязательныйOptional

LongLong

Задайте одно из значений упдатетипинум .Set to one of the UpdateTypeEnum values.

Note: значения дбупдатерегулар и дбупдатебатч действительны, только если включено пакетное обновление.NOTE: The dbUpdateRegular and dbUpdateBatch values are valid only if batch updating is enabled.

ПримечанияRemarks

Можно использовать метод CancelUpdate , чтобы отменить все ожидающие обновления, являющиеся результатом операции " изменить " или " AddNew ".You can use the CancelUpdate method to cancel any pending updates resulting from an Edit or AddNew operation. Например, если пользователь вызывает метод Edit или AddNew и еще не вызвал метод Update , CancelUpdate отменяет все изменения, внесенные после вызова метода Edit или AddNew .For example, if a user invokes the Edit or AddNew method and hasn't yet invoked the Update method, CancelUpdate cancels any changes made after Edit or AddNew was invoked.

Проверьте свойство EditMode объекта Recordset , чтобы определить, есть ли отложенная операция, которую можно отменить.Check the EditMode property of the Recordset to determine if there is a pending operation that can be canceled.

Примечание

Использование метода CancelUpdate аналогично переходу на другую запись без использования метода Update , за исключением того, что текущая запись не изменяется, а различные свойства, такие как BOF и EOF, не обновляются.Using the CancelUpdate method has the same effect as moving to another record without using the Update method, except that the current record doesn't change, and various properties, such as BOF and EOF, aren't updated.

ПримерExample

В этом примере показано, как метод CancelUpdate используется с методом AddNew .This example shows how the CancelUpdate method is used with the AddNew method.

    Sub CancelUpdateX() 
     
       Dim dbsNorthwind As Database 
       Dim rstEmployees As Recordset 
       Dim intCommand As Integer 
     
       Set dbsNorthwind = OpenDatabase("Northwind.mdb") 
       Set rstEmployees = dbsNorthwind.OpenRecordset( _ 
          "Employees", dbOpenDynaset) 
     
       With rstEmployees 
          .AddNew 
          !FirstName = "Kimberly" 
          !LastName = "Bowen" 
          intCommand = MsgBox("Add new record for " & _ 
             !FirstName & " " & !LastName & "?", vbYesNo) 
          If intCommand = vbYes Then 
             .Update 
             MsgBox "Record added." 
             ' Delete new record because this is a  
             ' demonstration. 
             .Bookmark = .LastModified 
             .Delete 
          Else 
             .CancelUpdate 
             MsgBox "Record not added." 
          End If 
       End With 
     
       dbsNorthwind.Close 
     
    End Sub 

В этом примере показано, как метод CancelUpdate используется с методом Edit .This example shows how the CancelUpdate method is used with the Edit method.

Sub CancelUpdateX2() 
 
   Dim dbsNorthwind As Database 
   Dim rstEmployees As Recordset 
   Dim strFirst As String 
   Dim strLast As String 
   Dim intCommand As Integer 
 
   Set dbsNorthwind = OpenDatabase("Northwind.mdb") 
   Set rstEmployees = dbsNorthwind.OpenRecordset( _ 
      "Employees", dbOpenDynaset) 
 
   With rstEmployees 
      strFirst = !FirstName 
      strLast = !LastName 
      .Edit 
      !FirstName = "Cora" 
      !LastName = "Edmonds" 
      intCommand = MsgBox("Replace current name with " & _ 
         !FirstName & " " & !LastName & "?", vbYesNo) 
      If intCommand = vbYes Then 
         .Update 
         MsgBox "Record modified." 
         ' Restore data because this is a demonstration. 
         .Bookmark = .LastModified 
         .Edit 
         !FirstName = strFirst 
         !LastName = strLast 
         .Update 
      Else 
         .CancelUpdate 
         MsgBox "Record not modified." 
      End If 
      .Close 
   End With 
 
   dbsNorthwind.Close 
 
End Sub