2015-01-07 2 views
1

Пожалуйста, смотрите код ниже:Нужно ли использовать RecordSet.CancelUpdate при откате транзакции?

GenErr: 
    If Err = -2147217871 Then 
     'rs.CancelUpdate 
     objCon.RollbackTransaction 
     Resume AfterNes 
    ElseIf Err = 3219 Then 
     'rs.CancelUpdate 
     objCon.RollbackTransaction 
     Resume 
    ElseIf Err = 9 Then 
     Resume Next 
    End If 
      ImportUSNs = Error$ 
    Exit Function 
    Resume 

я добавил сделку сегодня. Если я откатываю транзакцию (когда есть ошибка), то мне нужно вызвать: rs.cancelupdate? rs - это ADO.Recordset.

ответ

1

Согласно MSDN:

Используйте метод CancelUpdate, чтобы отменить любые изменения, сделанные в текущей строке или сбросить вновь добавленный ряд. Вы не можете отменить изменения в текущей строки или новую строку после вызова метода Update, если изменений не являются либо частью транзакции, которые вы можете откатить с методами RollbackTrans или часть обновления пакета.

С RollbackTransaction собирается свернуть все обратно, CancelUpdate ненужно.

+0

Спасибо. Вот что я подумал. +1. – w0051977

Смежные вопросы