除了在 Error 对象和 Errors 集合中说明的提供者错误之外,ADO 本身也将错误返回到运行时环境的异常处理机制之中。使用编程语言的错误捕获机制(如 Microsoft® Visual Basic® 中的 On Error 语句)可捕获及处理下列错误。下表将同时显示十进制和十六进制错误代码值。

常量名称

编号

说明

adErrInvalidArgument

3001

0x800A0BB9

应用程序使用的参数其类型错误、超出可接受的范围或者与其他参数冲突。

adErrNoCurrentRecord

3021

0x800A0BCD

BOFEOFTrue,或者当前记录已经删除。应用程序请求的操作需要当前记录。

adErrIllegalOperation

3219

0x800A0C93

应用程序请求的操作不允许出现在该上下文中

adErrInTransaction

3246

0x800A0CAE

在事务中应用程序无法显式关闭 Connection 对象。

adErrFeatureNotAvailable

3251

0x800A0CB3

提供者不支持应用程序请求的操作。

adErrItemNotFound

3265

0x800A0CC1

ADO 无法在对应于应用程序请求的名称或顺序引用的集合中找到对象。

adErrObjectInCollection

3367

0x800A0D27

无法追加,对象已经在集合中。

adErrObjectNotSet

3420   0x800A0D5C

应用程序引用的对象不再指向有效的对象。

adErrDataConversion

3421

0x800A0D5D

应用程序使用了不符合对当前操作的值类型。

adErrObjectClosed

3704

0x800A0E78

如果对象关闭,则不允许应用程序请求的操作。

adErrObjectOpen

3705

0x800A0E79

如果对象打开,则不允许应用程序请求的操作。

adErrProviderNotFound

3706

0x800A0E7A

ADO 找不到指定的提供者。

adErrBoundToCommand

3707

0x800A0E7B

应用程序无法用 Command 对象将 Recordset 对象的 ActiveConnection 属性更改为它的来源数据。

adErrInvalidParamInfo

3708

0x800A0E7C

应用程序错误地定义了 Parameter 对象。

adErrInvalidConnection

3709

0x800A0E7D

应用程序通过引用关闭或无效的 Connection 对象来请求对对象的操作。