您所在的步骤...
? | 连接数据源。 |
? | 可选择创建表示 SQL 查询命令的对象。 |
? | 可选择在 SQL 命令中将值指定为变量参数。 |
? | 执行命令。如果命令以行返回,将行存储在存储对象中。 |
? | 可选择对数据进行定位、检查、操作和编辑。 |
? | 适当情况下,可以使用存储对象中的变更对数据源进行更新。可选择在事务处理中嵌入更新数据。 |
? | 在使用事务之后,可以接受或拒绝在事务中所做的更改。结束事务。 |
讨论
假设批更新结束时发生错误,如何解决将取决于错误的性质和严重性以及应用程序的逻辑关系。如果数据库是与其他用户共享的,典型的错误则是他人在您之前更改了数据字段,这种类型的错误称为“冲突”。ADO 将检测到这种请况并报告错误。
本教程中的该步骤分为两部分:如果不存在更新错误则“提交”事务,结束更新。
如果错误存在,它们会被错误处理例程捕获。可使用 adFilterConflictingRecords 常数对 Recordset 进行筛选,将冲突行显示出来。要纠正错误只需打印作者的姓和名(au_fname 和 au_lname),然后回卷事务,放弃成功的更新。由此结束更新。
...
conn.CommitTrans
...
On Error
rs.Filter = adFilterConflictingRecords
rs.MoveFirst
Do While Not rs.EOF
Debug.Print "Conflict: Name: " & rs("au_fname") " " & rs("au_lname")
rs.MoveNext
Loop
conn.Rollback
Resume Next
...
本教程到此结束。