ADO WillChangeRecord 和 RecordChangeComplete 事件
❮ 完整的 Recordset 对象参考
WillChangeRecord 事件
WillChangeRecord 事件在一条或多条记录更改之前触发。
注意:在此事件返回之前,将 status 参数设置为 adStatusCancel 可以取消导致此事件的操作,或将其设置为 adStatusUnwantedEvent 以防止后续通知。
RecordChangeComplete 事件
RecordChangeComplete 事件在一条或多条记录更改之后触发。
注意:在此方法返回之前,将 status 参数设置为 adStatusUnwantedEvent 以防止后续通知。
注意:如果您使用以下 Recordset 操作之一更改记录中的字段,则可能会发生 WillChangeRecord 事件或 RecordChangeComplete 事件:Update、Delete、CancelUpdate、AddNew、UpdateBatch 和 CancelBatch。
语法
WillChangeRecord reason,numrec,status,objRs
RecordChangeComplete reason,numrec,objErr,status,objRs
参数 | 描述 |
---|---|
reason | 一个 EventReasonEnum 值,指定此事件的原因 |
numrec | 指示受影响的记录数 |
status | 一个 EventStatusEnum 值,指示事件执行的状态 |
objErr | 如果 status 设置为 adStatusErrorsOccurred,则描述错误的 Error 对象的名称,否则未设置 |
objRs | 触发此事件的 Recordset 对象的名称 |
EventReasonEnum 值
常量 | 值 | 描述 |
---|---|---|
adRsnAddNew | 1 | 一个操作添加了一条新记录 |
adRsnDelete | 2 | 一个操作删除了记录 |
adRsnUpdate | 3 | 一个操作更新了现有记录 |
adRsnUndoUpdate | 4 | 一个操作撤销了记录的更新 |
adRsnUndoAddNew | 5 | 一个操作撤销了新记录的添加 |
adRsnUndoDelete | 6 | 一个操作撤销了记录的删除 |
adRsnFirstChange | 11 | 一个操作对记录进行了首次更改 |
EventStatusEnum 值
常量 | 值 | 描述 |
---|---|---|
adStatusOK | 1 | 导致事件的操作成功 |
adStatusErrorsOccurred | 2 | 导致事件的操作失败 |
adStatusCantDeny | 3 | 导致事件的操作无法取消 |
adStatusCancel | 4 | 导致事件的操作已取消 |
adStatusUnwantedEvent | 5 | 在事件方法执行完成之前阻止后续通知 |
❮ 完整的 Recordset 对象参考