除了在 Error 对象和 Errors 集合中说明的提供者错误之外,ADO 本身也将错误返回到运行时环境的异常处理机制之中。使用编程语言的错误捕获机制(如 Microsoft® Visual Basic® 中的 On Error 语句)可捕获及处理下列错误。下表将同时显示十进制和十六进制错误代码值。
常量名称 |
编号 |
说明 |
adErrInvalidArgument |
3001 0x800A0BB9 |
应用程序使用的参数其类型错误、超出可接受的范围或者与其他参数冲突。 |
adErrNoCurrentRecord |
3021 0x800A0BCD |
|
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 对象来请求对对象的操作。 |