ADO 错误

ErrorValueEnum 常量描述 ADO 错误值。 有关这些枚举常量(包括值)的完整列表,请参阅 附录 B:ADO 错误。 本部分将检查一些更有趣的错误,并解释一些可引发错误的特定情况,或解决问题的解决方案。 同时列出了 ErrorValueEnum 常量和短正十进制数。

数字 ErrorValueEnum 常量 说明/可能的原因
3000 adErrProviderFailed (提供程序失败) 提供程序无法执行请求的操作。
3001 adErrInvalidArgument 参数的类型不正确、超出可接受范围或彼此冲突。 此错误通常是由 SQL SELECT 语句中的版式错误引起的。 例如,拼写错误的字段名称或表名可能会生成此错误。 在数据存储中不存在 SELECT 语句中命名的字段或表时,也可能发生此错误。
3002 adErrOpeningFile 无法打开文件。 指定了拼写错误的文件名,或者文件已被移动、重命名或删除。 通过网络,驱动器可能暂时不可用,或者网络流量可能会阻止连接。
3003 adErrReadFile 无法读取文件。 文件的名称未正确指定,文件可能已被移动或删除,或者文件可能已损坏。
3004 adErrWriteFile 写入文件失败。 你可能已经关闭了一个文件,然后尝试写入该文件,或者该文件可能已损坏。 如果文件位于网络驱动器上,则暂时性网络条件可能会阻止写入网络驱动器。
3021 adErrNoCurrentRecord BOFEOF 为 True,或已删除当前记录。 请求的操作需要当前记录。

尝试使用 FindSeek 更新记录,以将记录指针移动到所需记录。 如果未找到记录,则 EOF 为 True。 在 AddNew 失败或 Delete 失败后,也可能发生此错误,因为这些方法失败时没有当前记录。
3219 adErrIllegalOperation 在此上下文中不允许操作。
3220 adErrCantChangeProvider 提供的提供程序不同于已使用的提供程序。
3246 adErrInTransaction 在事务处理中,连接 对象不能被显式关闭。 当前参与事务的 RecordsetConnection 对象无法关闭。 在关闭对象之前调用 RollbackTransCommitTrans
3251 adErrFeatureNotAvailable 对象或提供程序无法执行请求的操作。 某些操作依赖于特定的提供程序版本。
3265 adErrItemNotFound 在与请求的名称或序号相对应的集合中找不到项。 指定了不正确的字段或表名。
3367 adErrObjectInCollection 对象已在集合中。 无法追加。 不能将对象添加到同一集合两次。
3420 adErrObjectNotSet 对象不再有效。
3421 adErrDataConversion 应用程序对当前操作使用错误类型的值。 例如,你可能已向需要流的操作提供字符串。
3704 adErrObjectClosed 关闭对象时不允许操作。 连接记录集 已关闭。 例如,其他一些例程可能已关闭全局对象。 在尝试操作之前,可以通过检查 State 属性来防止此错误。
3705 adErrObjectOpen 打开对象时不允许操作。 已经打开的对象无法再打开。 字段不能追加到打开的 Recordset
3706 adErrProviderNotFound 找不到提供程序。 它可能无法正确安装。

提供程序的名称可能未正确指定,指定的提供程序可能不会安装在执行代码的计算机上,或者安装可能已损坏。
3707 adErrBoundToCommand 无法更改 Recordset 对象的 ActiveConnection 属性,该对象具有 Command 对象作为其源。 应用程序尝试将新的 Connection 对象分配给 Recordset,该 命令 对象作为其源。
3708 adErrInvalidParamInfo 未正确定义参数 对象。 提供了不一致或不完整的信息。
3709 adErrInvalidConnection 连接不能用于执行此操作。 在此上下文中,它要么已关闭,要么无效。
3710 adErrNotReentrant 处理事件时无法执行操作。 无法在导致事件再次触发的事件处理程序中执行操作。 例如,不应从 WillMove 事件处理程序中调用导航方法。
3711 adErrStillExecuting 异步执行时无法执行操作。
3712 adErrOperationCancelled 操作已被用户取消。 应用程序已调用 CancelUpdateCancelBatch 方法,并且当前操作已被取消。
3713 adErrStillConnecting 异步连接时无法执行操作。
3714 adErrInvalidTransaction 协调事务无效或尚未启动。
3715 adErrNotExecuting 操作无法执行,因为未在执行中。
3716 为不安全操作错误 此计算机上的安全设置禁止访问另一个域中的数据源。
3717 adWrnSecurityDialog 仅供内部使用。 请勿使用。 为了完整性,条目已被纳入。此错误不应出现在您的代码中。
3718 adWrnSecurityDialogHeader 仅供内部使用。 请勿使用。 为了完整性,条目被包括在内。此问题不应出现在代码中。
3719 adErrIntegrityViolation 数据值与字段的完整性约束冲突。 字段 的新值将导致键重复。 形成两条记录之间关系的一端的值可能无法更新。
3720 权限被拒绝错误 权限不足会阻止写入字段。 连接字符串中指定的用户没有合适的权限将数据写入 Field
3721 adErrDataOverflow 数据值太大,无法由字段数据类型表示。 为目标字段分配的数值过大。 例如,向短整数字段分配了长整数值。
3722 adErrSchemaViolation 数据值与字段的数据类型或约束冲突。 数据存储具有与 字段 值不同的验证约束。
3723 adErrSignMismatch 转换失败,因为数据值已签名,提供程序使用的字段数据类型为未签名。
3724 adErrCantConvertvalue 由于符号不匹配或数据溢出以外的原因,无法转换数据值。 例如,转换会截断数据。
3725 adErrCantCreate 由于字段数据类型未知,或者提供程序没有足够的资源来执行该操作,因此无法设置或检索数据值。
3726 adErrColumnNotOnThisRow 记录不包含此字段。 指定了不正确的字段名称,或者引用了不属于当前记录集合 中的 字段。
3727 adErrURLDoesNotExist 目标 URL 的源 URL 或父 URL 不存在。 源 URL 或目标 URL 中存在版式错误。 你可能有 https://mysite/photo/myphoto.jpg,而实际上你应该有 https://mysite/photos/myphoto.jpg。 父 URL 中的版式错误(在这种情况下,照片 而不是 照片)导致了错误。
3728 adErrTreePermissionDenied 权限不足以访问树或子树。 在连接字符串中命名的用户没有适当的权限。
3729 adErrInvalidURL URL 包含无效字符。 请确保正确键入 URL。 URL 遵循当前提供程序注册的方案(例如,为 http 注册 Internet 发布提供程序)。
3730 adErrResourceLocked 由指定 URL 表示的对象由一个或多个其他进程锁定。 等待进程完成并再次尝试该操作。 您尝试访问的对象已被其他用户或应用程序中的另一个进程锁定。 这很可能是在多用户环境中出现的。
3731 adErrResourceExists 无法执行复制操作。 目标 URL 命名的对象已存在。 请指定 adCopyOverwrite 来替换该对象。 如果在复制目录中文件时未指定 adCopyOverwrite,则尝试复制目标位置中已存在的项时,复制将失败。
3732 adErrCannotComplete 服务器无法完成该操作。 这可能是因为服务器正忙于其他操作,或者资源可能较低。
3733 adErrVolumeNotFound 提供程序找不到 URL 指示的存储设备。 请确保正确键入 URL。 存储设备的 URL 可能不正确,但此错误可能会因其他原因而发生。 设备可能处于脱机状态,或者大量网络流量可能会阻止连接。
3734 adErrOutOfSpace 无法执行操作。 提供程序无法获取足够的存储空间。 服务器上的临时文件可能没有足够的 RAM 或硬盘驱动器空间。
3735 adErrResourceOutOfScope 源或目标 URL 不在当前记录的范围之外。
3736 adErrUnavailable 操作无法完成,状态不可获取。 该字段可能不可用,或者未尝试该操作。 其他用户可能已更改或删除您尝试访问的字段。
3737 adErrURLNamedRowDoesNotExist 此 URL 命名的记录不存在。 尝试使用 Record 对象打开文件时,文件名或文件的路径拼写错误。
3738 adErrDelResOutOfScope 要删除的对象 URL 不在当前记录的范围之外。
3747 adErrCatalogNotSet 操作需要有效的 ParentCatalog
3748 adErrCantChangeConnection 连接被拒绝。 你请求的新连接具有不同于已使用的新连接的特征。
3749 adErrFieldsUpdateFailed 字段更新失败。 有关详细信息,请查看各个字段对象的 状态 属性。 此错误可能发生在两种情况下:在更改或向数据库添加记录的过程中更改 Field 对象的值时;以及更改 Field 对象本身的属性时。

RecordRecordset 更新失败,因为当前记录中的某个字段出现问题。 枚举 字段 集合,并检查每个字段 状态 属性以确定问题的原因。
3750 adErrDenyNotSupported 提供程序不支持共享限制。 尝试限制文件共享,但您的服务提供商不支持这一概念。
3751 adErrDenyTypeNotSupported 提供程序不支持请求的共享限制类型。 已尝试建立提供商不支持的某种文件共享限制。 请参阅提供程序的文档,确定支持哪些文件共享限制。