对象数据管理器 (ODM) 错误代码
当ODM子程序不成功时,将返回值-1并将odmerrno变量设置为以下值之一:
| 项 | 描述 |
|---|---|
| ODMI_BAD_CLASSNAME | 指定的对象类名与文件中的对象类名不匹配。 请检查路径名和许可权。 |
| ODMI_BAD_CLXNNAME | 指定的集合名称与文件中的集合名称不匹配。 |
| ODMI_BAD_CRIT | 指定的搜索条件的格式不正确。 请确保条件仅包含有效的描述符名称,并且搜索值正确。 有关限定条件的信息,请参阅 了解 ODM 对象搜索 在 常规编程概念: 编写和调试程序 中。 |
| ODMI_BAD_LOCK | 无法对文件设置锁定。 请检查路径名和许可权。 |
| ODMI_BAD_TIMEOUT | 超时值无效。 它必须是正整数。 |
| ODMI_BAD_TOKEN | 无法创建或打开锁定文件。 请检查路径名和许可权。 |
| ODMI_CLASS_DNE | 指定的对象类不存在。 请检查路径名和许可权。 |
| ODMI_CLASS_EXISTS | 指定的对象类已存在。 创建对象类时,该对象类不得存在。 |
| ODMI_CLASS_PERMS | 由于文件许可权,无法打开对象类。 |
| ODMI_CLXNMAGICNO_ERR | 指定的集合不是有效的对象类集合。 |
| ODMI_FORK | 无法派生子进程。 请确保子进程可执行,然后重试。 |
| ODMI_INTERNAL_ERR | 发生内部一致性问题。 请确保对象类有效,或者与负责系统的人员联系。 |
| ODMI_INVALID_CLASS | 指定的文件不是对象类。 |
| ODMI_INVALID_CLXN | 指定的集合不是有效的对象类集合,或者集合不包含一致的数据。 |
| ODMI_INVALID_PATH | 指定的路径在文件系统上不存在。 确保路径可访问。 |
| ODMI_LINK_NOT_FOUND | 无法打开所访问的对象类。 确保链接的对象类可访问。 |
| ODMI_LOCK_BLOCKED | 无法授予锁定。 另一个进程已具有该锁定。 |
| ODMI_LOCK_ENV | 无法检索或设置锁定环境变量。 请除去一些环境变量,然后重试。 |
| ODMI_LOCK_ID | 锁定标识未引用有效的锁定。 锁定标识必须与从 odm_lock 子例程返回的标识相同。 |
| ODMI_MAGICNO_ERR | 类符号未标识有效的对象类。 |
| ODMI_MALLOC_ERR | 无法分配足够的存储空间。 请稍后重试或联系负责系统的人员。 |
| ODMI_NO_OBJECT | 指定的对象标识未引用有效对象。 |
| ODMI_OPEN_ERR | 无法打开对象类。 请检查路径名和许可权。 |
| ODMI_OPEN_PIPE | 无法打开到子进程的管道。 请确保子进程可执行,然后重试。 |
| ODMI_PARAMS | 传递给子例程的参数不正确。 请确保参数数目正确并且有效。 |
| ODMI_READ_ONLY | 指定的对象类以只读方式打开,无法修改。 |
| ODMI_READ_PIPE | 无法从子进程的管道中读取。 请确保子进程可执行,然后重试。 |
| ODMI_TOOMANYCLASSES | 访问了太多对象类。 应用程序只能访问少于 1024 个对象类。 |
| ODMI_UNLINKCLASS_ERR | 无法从文件系统中除去对象类。 请检查路径名和许可权。 |
| ODMI_UNLINKCLXN_ERR | 无法从文件系统中除去对象类集合。 请检查路径名和许可权。 |
| ODMI_UNLOCK | 无法解锁锁定文件。 确保锁定文件存在。 |