预测错误

错误预防至少与错误处理一样重要。 最后一节介绍应用程序为帮助减少错误发生的可能性而可以采取的预防措施的简短列表。

在尝试使用这些对象执行操作之前,通过检查 State 属性中的值来检查对象的状态。 例如,如果应用程序使用全局连接,请在调用 Open 方法之前,检查其 State 属性是否已打开。

  • 所有接受用户数据的程序都必须包含代码,才能在将数据发送到数据存储之前验证该数据。 不能依赖数据存储、提供程序、ADO 甚至编程语言在出现问题时发出提示。 必须检查用户输入的每个字节,确保数据字段类型正确,且必填字段不为空。

在尝试将数据写入数据存储之前,请检查数据。 执行此操作最简单的方法是处理 WillMove 事件或 WillUpdateRecordset 事件。 有关处理 ADO 事件更全面的讨论,请参阅处理 ADO 事件

在尝试移动记录指针之前,请确保 Recordset 对象没有超出 Recordset 的边界。 如果在 EOF 为 True 时尝试 MoveNext 或在 BOF 为 True 时尝试 MovePrev,则会发生错误。 如果在 EOF 和 BOF 都为 True 时执行任何 Move 方法,则会产生错误。

如果尝试对空的 Recordset 执行 Seek 和 Find 等操作,也会发生错误。