- 浏览: 230447 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (127)
- 求职技巧 (1)
- java语言 (27)
- 数据库 (1)
- JDK 6.0学习笔记 (5)
- TOMCAT (2)
- JSP&Servlet (3)
- Data Binding (1)
- Windows (1)
- DB2 (15)
- Hibernate (5)
- XML (1)
- Financial Business (1)
- 项目管理 (0)
- Open source Framework (1)
- 总结思考反思 (2)
- Oracle (1)
- English Study (2)
- Other (28)
- java 模式 (8)
- en study (2)
- 异常处理 (4)
- Java 基础知识 (3)
- JDK1.5 Tiger (2)
- SSO (1)
- 开发中遇到的问题解决 (1)
最新评论
-
sonull:
怒赞!困扰多年的问题,就因为这个问题我一直都用subversi ...
如何使eclipse中subclipse插件的显示语言设置为英文 -
hanmiao:
果真如此,很好用,重启 eclipse 之后 svnclips ...
如何使eclipse中subclipse插件的显示语言设置为英文 -
wystark:
...
如何使eclipse中subclipse插件的显示语言设置为英文 -
minn84:
...
对年轻人的几点忠告 -
leizisdu:
引用 if(不包含物品i仅是可能的)感觉有些拗口
0/1背包问题-递归、动态规划
[size=medium][/size]本节列示 SQLSTATE 及其含义。SQLSTATE 是按类代码进行分组的;对于子代码,请参阅相应的表。
表 2. SQLSTATE 类代码 类
代码
含义 要获得子代码,
参阅...
00 完全成功完成 表 3
01 警告 表 4
02 无数据 表 5
07 动态 SQL 错误 表 6
08 连接异常 表 7
09 触发操作异常 表 8
0A 功能部件不受支持 表 9
0D 目标类型规范无效 表 10
0F 无效标记 表 11
0K RESIGNAL 语句无效 表 12
0N SQL/XML 映射错误 表 13
20 找不到 CASE 语句的条件 表 15
21 基数违例 表 16
22 数据异常 表 17
23 约束违例 表 18
24 无效的游标状态 表 19
25 无效的事务状态 表 20
26 无效 SQL 语句标识 表 21
28 无效权限规范 表 23
2D 无效事务终止 表 24
2E 无效连接名称 表 25
34 无效的游标名称 表 26
36 游标灵敏度异常 表 27
38 外部函数异常 表 28
39 外部函数调用异常 表 29
3B SAVEPOINT 无效 表 30
40 事务回滚 表 31
42 语法错误或访问规则违例 表 32
44 WITH CHECK OPTION 违例 表 33
46 Java DDL 表 34
51 无效应用程序状态 表 35
53 无效操作数或不一致的规范 表 36
54 超出 SQL 限制,或超出产品限制 表 37
55 对象不处于先决条件状态 表 38
56 其他 SQL 或产品错误 表 39
57 资源不可用或操作员干预 表 40
58 系统错误 表 41
5U 实用程序 表 42
类代码 00 完全成功完成
表 3. 类代码 00:完全成功完成 SQLSTATE 值
含义
00000 操作执行成功,并且未产生任何类型的警告或异常情况。
类代码 01 警告
表 4. 类代码 01:警告 SQLSTATE 值
含义
01002 发生 DISCONNECT 错误。
01003 从列函数的参数消去 NULL 值。
01004 字符串值在指定给具有较短长度的另一字符串数据类型时被截断。
01005 SQLDA 中的条目数不够。
01007 未授予特权。
0100C 从过程返回了一个或多个特殊结果集。
0100D 关闭的游标已在链中的下一个结果集上重新打开。
0100E 生成的过程大于允许的最大结果集数目。只有第一个整数结果集已经返回到调用者。
01503 结果列数比提供的主机变量数大。
01504 UPDATE 或 DELETE 语句不包括 WHERE 子句。
01506 对 DATE 或 TIMESTAMP 值进行了调整,以更正算术运算得出的无效日期。
01509 由于用户虚拟机中的存储器不够,取消游标的分块。
01515 已为主机变量指定了一个空值,因为列的非空值不在主机变量的范围之内。
01516 已忽略不可用的 WITH GRANT OPTION。
01517 用替代字符替换不能转换的字符。
01519 已为主机变量指定了一个空值,因为数字值超出范围。
01524 列函数的结果不包括由算术表达式求值得出的空值。
01526 隔离级别已升级。
01527 SET 语句引用的专用寄存器在 AS 上不存在。
01539 连接成功但只应使用 SBCS 字符。
01543 已忽略重复约束。
01545 未限定列名已解释为相关引用。
01550 索引未创建,因为具有指定描述的索引已经存在。
01560 忽略了一个冗余的 GRANT。
01562 在数据库配置文件中的新日志路径(newlogpth)无效。
01563 日志文件的当前路径(logpath)无效。日志文件路径被复位为缺省值。
01564 已为主机变量指定了空值,因为发生了被零除的错误。
01586 该语句导致一个或多个表自动置于设置完整性暂挂状态。
01589 语句包含有冗余规范。
01592 在引用 SOURCE 函数的 CREATE FUNCTION 语句中,或:
输入参数的长度、精度或小数位大于源函数相应参数的长度、精度或小数位;或
RETURNS 或 CAST FROM 参数的长度、精度或小数位比源函数的小;或
CREATE FUNCTION 语句中的 CAST FROM 参数的长度、精度或小数位比 RETURNS 参数的大。
运行时可能发生截断(那时可能会引起错误)。
01594 对于所有信息,SQLDA 内的条目数不够多(即,没有足够的描述符返回相异名称)。
01595 该视图已替换现有无效视图。
01596 没有为基于长字符串数据类型的单值类型创建比较函数。
01598 尝试激活活动的事件监视器,或尝试释放不活动的事件监视器。
01599 忽略 REBIND 上的绑定选项。
01602 优化级别已降低。
01603 CHECK DATA 处理过程中发现约束违例,已将其移至异常表。
01604 已经说明了 SQL 语句,但是未执行它。
01605 递归公共表表达式可能包含无限循环。
01606 节点或系统数据库目录是空的。
01607 只读事务中节点的时间差超过定义的阈值。
01608 已经替换了不受支持的值。
01609 生成的过程大于允许的最大结果集数目。只有第一个整数结果集已经返回到调用者。
01610 从过程返回了一个或多个特殊结果集。
01611 关闭的游标已在链中的下一个结果集上重新打开。
01614 定位器数小于结果集数。
01616 估计的 CPU 成本超出了资源限制。
01618 重新分发节点组是更改数据库分区所必需的。
01620 UNION ALL 的某些基本表可能是同一个表。
01621 检索到的 LOB 值可能已更改。
01622 语句成功完成,但在语句完成之后发生了系统错误。
01623 忽略 DEGREE 的值。
01625 模式名在 CURRENT PATH 中出现了多次。
01626 数据库只有一个活动的缓冲池。
01627 DATALINK 值可能无效,因为该表处理协调暂挂或协调不可能的状态。
01632 并发连接数超出了该产品的定义授权。
01633 可能不能使用具体化查询表来优化查询的处理。
01636 数据库管理器一直未验证非增量数据的完整性。
01637 未启用调试。
01639 联合对象可能需要调用程序具有对数据源对象的必要特权。
01641 Datalink 类型属性限制结构化类型的使用。
01642 对于最大的可能 USER 缺省值,列不足够长。
01643 对 SQL 例程中 SQLSTATE 或 SQLCODE 变量的赋值可能会被覆盖,不会激活任何处理程序。
01645 SQL 过程的可执行文件未保存在数据库目录中。
01648 忽略了 COMPRESS 列属性,因为对表取消激活了 VALUE COMPRESSION。
01649 缓冲池操作已经完成,但是直到下一次数据库重新启动才会生效。
01650 索引和表统计信息不一致。
01651 成功激活了事件监视器,但是某些监视信息可能丢失了。
01652 由于语句上下文而忽略了隔离子句。
01653 权限授予给 USER。因为权限名称大于 8 字节,所以不考虑组。
01654 未启动缓冲池。
01655 成功创建了事件监视器,但是至少有一个事件监视器目标表已存在。
01657 缓冲池操作在下一次数据库重新启动之后才会生效。
01665 列名或参数名被截断。
01667 可能不能使用视图来优化查询的处理。
01669 由于远程目录与本地目录之间的模式不一致,因此,未彻底更新指定昵称的统计信息。
01670 对新表来说,不存在缺省主表空间。
01671 高速缓存的语句的环境与当前环境不同。将使用当前环境来重新优化指定的语句。
01674 表空间属性对于查询性能不是最佳的。
01675 指定的表空间数超过了需要的表空间数。多余的表空间将被忽略。
01676 忽略了传送操作,因为授权标识已经是数据库对象的所有者。
01677 对于已经定义了插件的服务器忽略了包装器选项。
01678 对用户映射的更改只应用于联合目录表,而不应用于外部用户映射存储库。
01679 无法为指定的授权标识建立可信连接。
01684 不支持指定的语言环境。返回的消息使用的是英语语言环境。
01686 表空间正在从 REGULAR 转换为 LARGE。必须对此表空间中的表的索引进行重组或重建,以便支持大型 RID。
01689 在未连接到数据源的情况下完成了 SQL 编译。
0168A 在数据源上找不到源过程的程序包主体,或者它无效。
01H51 “MQSeries 应用程序消息传递接口”消息被截断。
01H52 例程的执行已完成,但是执行期间至少遇到了一个错误或警告。提供了更多信息。
01H53 例程遇到了警告。参阅 SQLCODE 以获取详细信息。
01HXX 由用户定义的函数或外部过程 CALL 返回了有效警告 SQLSTAE。
类代码 02 无数据
表 5. 类代码 02:无数据 SQLSTATE 值
含义
02000 发生下述异常之一:
SELECT INTO 语句或 INSERT 语句的子查询的结果为空表。
在搜索的 UPDATE 或 DELETE 语句内标识的行数为零。
在 FETCH 语句中引用的游标位置处于结果表最后一行之后。
02501 游标位置对于当前行的 FETCH 无效。
02502 检测到删除或更新孔
02506 遇到了错误,并且已按 RETURN DATA UNTIL 子句指定那样容许它。
类代码 07 动态 SQL 错误
表 6. 类代码 07:动态 SQL 错误 SQLSTATE 值
含义
07001 对于参数标记的数目来说,主机变量的数目不正确。
07002 调用参数列表或控制块无效。
07003 在 EXECUTE 语句内标识的语句是一条 select 语句,或未处于已预编译状态。
07004 动态参数需要 USING 子句或 INTO 子句。
07005 游标的语句名标识的是一个不能与游标关联的已预编译语句。
07006 由于其数据类型的缘故不能使用某输入主机变量。
类代码 08 连接异常
表 7. 类代码 08:连接异常 SQLSTATE 值
含义
08001 应用程序请求器不能建立连接。
08002 连接已存在。
08003 连接不存在。
08004 应用程序服务器拒绝了建立连接。
08007 事务解析未知。
08502 用 TWOPHASE 的 SYNCPOINT 运行的应用程序进程发出的 CONNECT 语句无效,因为无事务管理器可用。
08504 当处理指定的路径重命名配置文件时遇到错误。
类代码 09 触发操作异常
表 8. 类代码 09:触发操作异常 SQLSTATE 值
含义
09000 触发 SQL 语句失败。
类代码 0A 不支持功能部件
表 9. 类代码 0A:不支持功能部件 SQLSTATE 值
含义
0A001 CONNECT 语句无效,因为进程不处于可连接状态。
0A502 未对此数据库实例启用操作。
0A503 由于潜在的数据不一致,不能编译联合插入、更新或删除操作。
类代码 0D 目标类型规范无效
表 10. 类代码 0D:目标类型规范无效 SQLSTATE 值
含义
0D000 目标结构化数据类型规范是源结构化数据类型的正确子类型。
类代码 0F 无效标记
表 11. 类代码 OF:无效标记 SQLSTATE 值
含义
0F001 LOB 标记变量当前不表示任何值。
类代码 0K RESIGNAL 语句无效
表 12. 类代码 0K:RESIGNAL 语句无效 SQLSTATE 值
含义
0K000 RESIGNAL 语句不在处理程序中。
类代码 0N SQL/XML 映射错误
表 13. 类代码 0N:SQL/XML 映射错误 SQLSTATE 值
含义
0N002 无法将字符映射至有效 XML 字符。
类代码 10 XQuery 错误
表 14. 类代码 10:XQuery 错误 SQLSTATE 值
含义
10000 XQuery 错误。
10501 XQuery 表达式缺少静态或动态上下文组件的指定。
10502 在 XQuery 表达式的序言中遇到了错误。
10503 在 XQuery 或 XPath 表达式中定义了重复的名称。
10504 在无效 URI 中指定了 XQuery 名称空间声明。
10505 字符、标记或子句在 XQuery 表达式中缺少了或者无效。
10506 XQuery 表达式引用了一个未定义的名称。
10507 处理 XPath 或 XQuery 表达式时遇到了类型错误。
10508 XQuery 表达式在已计算的构造函数中包括一个无效的名称表达式。
10509 指定了不受支持的 XQuery 语言功能部件。
10510 未指定字符串文字作为强制类型转换表达式操作数或构造函数参数。
10601 在处理 XQuery 函数或运算符时遇到了算术错误。
10602 在处理 XQuery 函数或运算符时遇到了数据类型转换错误。
10603 在处理 XQuery 函数或运算符时遇到了字符处理错误。
10604 未提供文档上下文来处理 XQuery 函数。
10605 在处理 XQuery 函数或运算符时遇到了日期时间错误。
10606 没有上下文项用来处理 XQuery 函数或运算符。
10607 在处理 XQuery 函数或运算符时遇到了名称空间错误。
10608 在 XQuery 函数或运算符的参数中遇到了错误。
10609 在处理 XQuery 函数或运算符时遇到了正则表达式错误。
10610 在处理 XQuery 函数或运算符时遇到了类型错误。
10611 在处理 XQuery 函数或运算符时遇到了未标识的错误。
10901 XQuery 原子值超出了 DB2 XQuery 数据类型的范围。
10902 XQuery 原子值超过了 DB2 XQuery 运算符或函数的长度限制。
10903 已超过相匹配的 XQuery 节点数的内部限制。
类代码 20 找不到 CASE 语句的条件
表 15. 类代码 20:找不到 Case 语句的条件 SQLSTATE 值
含义
20000 找不到 CASE 语句的条件。
类代码 21 基数违例
表 16. 类代码 21:基数违例 SQLSTATE 值
含义
21000 SELECT INTO 的结果是一个多行的结果表,或者,基本谓词的子查询结果为多个值。
21501 对自引用表进行多行 INSERT 是无效的。
21502 主键的多行 UPDATE 是无效的。
21504 从删除规则为 RESTRICT 或 SET NULL 的自引用表进行多行 DELETE 是无效的。
21505 行函数返回的内容不能超过一行。
21506 表的同一行不能是多个更新、删除或插入操作的目标。
类代码 22 数据异常
表 17. 类代码22:数据异常 SQLSTATE 值
含义
22001 字符数据,发生右截断;例如,更新或插入值对于列来说太长(字符串),或者日期时间值由于太小而不能赋给主机变量。
22002 检测到空值或缺少指示符参数;例如,不能将空值赋给主机变量,因为没有指定指示符变量。
22003 数值超出范围。
22004 不能从定义为 PARAMETER STYLE GENERAL 的过程或者从用非空参数调用的类型保留方法中返回空值。
22007 检测到无效的日期时间格式;即指定了无效的字符串表示法或值。
22008 发生日期时间字段溢出;例如,对日期或时间戳记算术运算的结果不在有效日期范围之内。
2200G 大多数特定类型都不匹配。
2200L XML 值不是具有单个根元素的结构良好的文档。
2200M 未能将值作为结构良好的 XML 文档进行解析或者根据 XML 模式来验证该值。
2200S XML 注释无效。
2200T XML 处理指令无效。
2200W XML 值包含未能序列化的数据。
22011 发生子字符串错误;例如,SUBSTR 的参数超出范围。
22012 用零作除数是无效的。
22018 对于 CAST、DECIMAL、FLOAT、或 INTEGER 标量函数,字符值是无效的。
22019 LIKE 谓词有无效转义字符。
22021 某字符不在编码字符集中。
22024 以 NUL 结束的输入主机变量或参数不包含 NUL。
22025 LIKE 谓词字符串模式包含无效的转义字符。
2202D 配合 mutator 方法使用了空实例。
2202H 在 TABLESAMPLE 子句中指定的样本大小无效。
22501 变长字符串的长度控制字段为负值或大于最大值。
22504 混合数据值是无效的。
22506 对日期时间专用寄存器的引用无效,因为 TOD 时钟发生故障或操作系统时区参数超出范围。
22522 CCSID 值根本无效,对数据类型或子类型无效,或对编码方案无效。
22525 数据分区键值无效。
22526 键变换函数没有生成任何行或生成了重复的行。
22527 对多行 INSERT 操作检测到了无效的输入数据。
22532 在 XML 模式存储库中未找到 XSROBJECT。
22533 在 XML 模式存储库中未找到唯一的 XSROBJECT。
22534 XML 模式文档未通过使用包括或重新定义而连接至其他 XML 模式文档。
22535 XML 模式未声明指定的全局元素。
22536 XML 值不包含必需的根元素。
225D1 未启用指定的 XML 模式以进行分解。
225D2 在分解 XML 文档期间发生了 SQL 错误。
225D3 分解 XML 文档时遇到了对于 XML 模式类型无效的值。
225D4 分解 XML 文档时遇到了对于目标 SQL 类型无效的值。
225D5 分解 XML 文档时遇到了上下文中未知或无效的 XML 节点。
225D6 指定的 XML 模式需要迁移到当前版本以支持分解。
225D7 分解 XML 文档时遇到了一个根元素,该根元素不是 XML 模式中的复杂类型的全局元素。
225DE 无法启用 XML 模式以进行分解。
类代码 23 约束违例
表 18. 类代码 23:约束违例 SQLSTATE 值
含义
23001 RESTRICT 更新或删除规则防止父键被更新或删除。
23502 插入或更新值为空,但该列不能包含空值。
23503 外键的插入或更新值无效。
23504 NO ACTION 更新或删除规则防止父键被更新或删除。
23505 发生由唯一索引或唯一约束强加的约束违例。
23510 使用由 RLST 表强加的命令时发生约束违例。
23511 不能删除父行,因为检查约束限制该删除。
23512 不能添加检查约束,因为该表含有不满足约束定义的行。
23513 INSERT 或 UPDATE 的结果行不符合检查约束定义。
23514 检查数据处理中发现约束违例。
23515 未能创建唯一索引,或者不能添加唯一约束,因为该表包含指定键的重复值。
23520 不能定义外键,因为其所有的值都不同于父表的父键。
23521 对目录表的更新违反了内部约束。
23522 标识列值的范围或者序列用完。
23523 已经为安全标号列提供了无效值。
23524 UNION ALL 视图内的无效行移动。
23525 未能插入或更新 XML 值,这是因为在插入或更新 XML 列的索引期间检测到错误。
23526 未能创建 XML 列的索引,因为在将 XML 值插入到索引中时检测到错误。
类代码 24 无效的游标状态
表 19. 类代码 24:无效的游标状态 SQLSTATE 值
含义
24501 标识的游标未打开。
24502 在 OPEN 语句中标识的游标已经打开。
24504 在 UPDATE、DELETE、SET 或 GET 语句中标识的游标未定位在行上。
24506 在 PREPARE 中标识的语句是一个打开游标语句。
24510 对一个删除孔或更新孔尝试了
UPDATE 或 DELETE 操作。
24512 结果表与基本表不一致。
24513 不允许 FETCH NEXT、PRIOR、CURRENT 或 RELATIVE,原因是游标位置未知。
24514 先前的错误已禁用此游标。
24516 已对结果集指定了一个游标。
24517 外部函数或方法将游标保持为打开。
类代码 25 无效的事务状态
表 20. 类代码 25:无效的事务状态 SQLSTATE 值
含义
25000 插入、更新或删除操作在指定它的上下文中无效。
25001 该语句只允许作为工作单元的第一条语句。
25501 该语句只允许作为工作单元的第一条语句。
25502 操作在单个事务中不能多次出现。
类代码 26 无效 SQL 语句标识
表 21. 类代码 26:无效 SQL 语句标识 SQLSTATE 值
含义
26501 标识的语句不存在。
类代码 27 触发的数据更改违例
表 22. 类代码 27:触发的数据更改违例 SQLSTATE 值 含义
27000 试图在同一 SQL 语句中多次更改同一个表中的同一行。
类代码 28 无效权限规范
表 23. 类代码 28:无效权限规范 SQLSTATE 值
含义
28000 权限名称无效。
类代码 2D 无效事务终止
表 24. 类代码 2D:无效事务终止 SQLSTATE 值
含义
2D521 SQL COMMIT 或 ROLLBACK 在当前操作环境中无效。
2D522 ATOMIC 复合语句中不允许 COMMIT 和 ROLLBACK。
2D528 动态 COMMIT 对于应用程序执行环境无效。
2D529 动态 ROLLBACK 对于应用程序执行环境无效。
类代码 2E 无效连接名称
表 25. 类代码 2E:无效连接名称 SQLSTATE 值
含义
2E000 连接名称无效。
类代码 34 无效的游标名称
表 26. 类代码 34:无效的游标名称 SQLSTATE 值
含义
34000 游标名无效。
类代码 36 无效游标规范
表 27. 类代码 36:无效游标规范 SQLSTATE 值
含义
36001 不能为指定的 SELECT 语句定义敏感游标。
类代码 38 外部函数异常
表 28. 类代码 38:外部函数异常 SQLSTATE 值
含义
38XXX 外部例程或触发器返回有效错误 SQLSTATE。
38001 不允许外部例程执行 SQL 语句。
38002 例程尝试修改数据,但例程未定义为 MODIFIES SQL DATA。
38003 例程中不允许该语句。
38004 例程尝试读取数据,但例程未定义为 READS SQL DATA。
38501 (使用 SIMPLE CALL 或 SIMPLE CALL WITH NULLS 调用约定)调用用户定义的函数、外部过程或触发器时出错。
38502 不允许外部函数执行 SQL 语句。
38503 用户定义的函数异常终止(abend)。
38504 用户定义的函数已被用户中断,以停止可能的循环条件。
38505 FINAL CALL 上的例程中不允许 SQL 语句。
38506 函数因来自 OLE DB 提供程序的错误而失败。
38552 SYSFUN 模式(由 IBM 提供)中的函数已异常终止。
可以在消息正文中找到下列原因码之一:
01
数值超出范围
02
被零除
03
算术溢出或下溢
04
日期格式无效
05
时间格式无效
06
时间戳记格式无效
07
时间戳记持续时间的字符表示法无效
08
时间间隔类型无效(必须是 1、2、4、8、16、32、64、128、256 之一)
09
字符串太长
10
字符串函数中的长度或位置超出范围
11
浮点数的字符表示法无效
38553 系统模式中的例程已因错误而终止。
38H01 MQSeries 函数未能初始化。
38H02 MQSeries 的“应用程序消息传递接口”未能终止会话。
38H03 MQSeries 的“应用程序消息传递接口”未能正确地处理消息。
38H04 MQSeries 的“应用程序消息传递接口”未能发送消息。
38H05 MQSeries 的“应用程序消息传递接口”未能读取/接收消息。
38H06 MQSeries 的“应用程序消息传递接口”预订(不预订)请求失败。
38H07 MQSeries 的“应用程序消息传递接口”未能落实工作单元。
38H08 MQSeries 的“应用程序消息传递接口”策略错误。
38H09 MQSeries XA(两阶段落实)API 调用错误。
38H0A MQSeries 的“应用程序消息传递接口”未能回滚工作单元。
类代码 39 外部函数调用异常
表 29. 类代码 39:外部函数调用异常 SQLSTATE 值
含义
39001 用户定义的函数已返回无效 SQLSTATE。
39004 不允许 IN 或 INOUT 参数为空值。
39501 与参数相关联的 eye-catcher(引人注目的事物)已被修改。
类代码 3B SAVEPOINT 无效
表 30. 类代码 3B:SAVEPOINT 无效 SQLSTATE 值
含义
3B001 保存点无效。
3B002 已经达到最大保存点数目。
3B501 检测到重复的保存点名。
3B502 指定了 RELEASE 或 ROLLBACK TO SAVEPOINT,但是保存点不存在。
3B503 在触发器或全局事务中不允许 SAVEPOINT、 RELEASE SAVEPOINT 或 ROLLBACK TO SAVEPOINT。
类代码 40 事务回滚
表 31. 类代码 40:事务回滚 SQLSTATE 值
含义
40001 发生了伴随自动回滚的超时或死锁。
40003 语句完整性未知。
40504 由于系统错误导致工作单元被回滚。
40506 由于 SQL 错误,当前事务已回滚。
40507 由于创建索引时发生故障,因此当前事务已回滚。
类代码 42 语法错误或访问规则违例
表 32. 类代码 42:语法错误或访问规则违例 SQLSTATE 值
含义
42501 授权标识不具有对标识对象执行指定操作的特权。
42502 授权标识不具有执行指定操作的特权。
42504 无法从指定的权限名撤销指定的特权、安全标号或免除凭证。
42506 发生所有者授权失败。
42508 不能将指定的数据库特权授予 PUBLIC。
42509 因为 STATICRULES 选项而未授权 SQL 语句。
42511 未能检索 DATALINK 值。
42512 授权标识对受保护列没有访问权。
42514 授权标识不具有对象的所有权需要的特权。
42516 用户映射存储库中的认证失败。
42519 不允许此授权标识对受保护表执行操作。
42520 由于此授权标识没有安全标号,所以无法执行内置函数。
42521 无法将权限或特权授予指定的授权标识。
42522 此授权标识没有凭证,因此无法保护列或者对该列除去保护。
42601 字符、标记或子句无效或丢失。
42602 检测到名称中有无效字符。
42603 检测到未终止的字符串常量。
42604 检测到无效数字或字符串常量。
42605 为标量函数指定的参数的数目无效。
42606 检测到无效十六进制常数。
42607 列函数的操作数无效。
42608 在 VALUES 中使用 NULL 或 DEFAULT 是无效的。
42609 运算符或谓词的所有操作数都是参数标记。
42610 不允许参数标记。
42611 列或参数定义无效。
42612 语句字符串是一条 SQL 语句,它在它所出现的上下文中是不可接受的。
42613 子句互斥。
42614 重复关键字无效。
42615 检测到无效备用项。
42616 指定了无效的选项。
42617 语句字符串是空白或空的。
42618 不允许主机变量。
42620 对 UPDATE 子句指定了只读 SCROLL。
42621 检查约束无效。
42622 名称或标号太长。
42623 不能指定 DEFAULT 子句。
42625 CASE 表达式无效。
42627 必须在使用 EXPRESSION AS 子句的谓词规范之前指定 RETURNS 子句。
42628 在变换定义中多次定义了 TO SQL 或 FROM SQL 变换函数。
42629 必须为 SQL 例程指定参数名。
42630 在嵌套复合语句中不能存在 SQLSTATE 或 SQLCODE 变量声明。
42631 SQL 函数或方法中的 RETURN 语句必须包括返回值。
42633 XMLATTRIBUTES 或 XMLFOREST 的参数需要 AS 子句。
42634 XML 名称无效。
42635 XML 名称空间前缀无效。
42636 缺少 BY REF 子句,或者不正确使用了该子句。
42637 无法在 DECLARE CURSOR 语句中指定 XQuery 表达式。
42701 在插入或更新操作或 SET 转换变量语句中检测到重复列名。
42702 由于名称重复,列引用有歧义。
42703 检测到一个未定义的列、属性或参数名。
42704 检测到未定义的对象或约束名。
42705 检测到未定义的服务器名。
42707 ORDER BY 内的列名不标识结果表中的列。
42709 在键列列表中指定了重复的列名。
42710 检测到重复的对象或约束名。
42711 在对象定义或 ALTER 语句中检测到重复列名或属性名。
42712 在 FROM 子句中检测到重复的表标志符。
42713 在对象列表中检测到重复对象。
42720 在节点目录内未找到远程数据库的节点名。
42723 模式中已经存在带有相同特征符的函数。
42724 不能访问用于用户定义的函数或过程的外部程序。
42725 直接引用了例程(不是通过特征符或者通过特定实例名进行引用),但是该例程有多个特定实例。
42726 检测到指定的派生表的名称重复。
42727 对新表来说,不存在缺省主表空间。
42728 在节点组定义中检测到重复节点。
42729 节点未定义。
42730 容器名已由另一表空间使用。
42731 容器名已由该表空间使用。
42732 在 SET CURRENT PATH 语句中检测到重复的模式名。
42734 检测到重复的参数名、SQL 变量名、游标名、条件名或标号。
42735 对缓冲池,未定义表空间的节点组。
42736 在 LEAVE 语句上指定的标号找不到或无效。
42737 未定义在处理程序中指定的条件。
42738 在 FOR 语句的 DECLARE CURSOR 语句中指定了重复的列名或未命名的列。
42739 检测到重复的变换。
42740 未找到指定类型的变换。未删除任何变换。
42741 未对数据类型定义变换组。
42742 类型表或带类型视图层次结构中已存在同类子表或子视图。
42743 在索引扩展名中未找到搜索方法。
42744 在变换组中未定义 TO SQL 或 FROM SQL 变换函数。
42745 例程将用现有方法定义覆盖关系。
42746 在同一类型层次结构中,方法名不能与结构化类型名相同。
42748 存储路径对于数据库来说已存在或者被指定了多次。
42749 对于 XML 模式来说,已经存在具有相同目标名称空间和模式位置的 XML 模式文档。
4274A 在 XML 模式存储库中未找到 XSROBJECT。
4274B 在 XML 模式存储库中未找到唯一的 XSROBJECT。
4274F 在安全标号组件中未定义组件元素。
4274G 在给定安全标号所使用的安全标号策略中未定义安全标号组件。
4274H 指定的安全策略不存在指定的访问规则。
4274I 指定的安全策略不存在安全标号。
4274J 数据库分区组已被此缓冲池使用。
42802 插入或更新值的数目与列数不相同。
42803 在 SELECT 或 HAVING 子句中的列引用无效,因为它不是分组列;或者在 GROUP BY 子句中的列引用无效。
42804 CASE 表达式中的结果表达式不兼容。
42805 ORDER BY 子句中的整数不标识结果表中的列。
42806 不能将某值赋予某主机变量, 因为数据类型不兼容。
42807 对该对象不允许执行 INSERT、UPDATE 或 DELETE。
42808 插入或更新操作中标识的列不可更新。
42809 标识的对象不是语句所应用的对象类型。
42810 FOREIGN KEY 子句中没有标识基本表。
42811 指定的列数与 SELECT 子句中的列数不相同。
42813 WITH CHECK OPTION 不能用于指定的视图。
42814 无法删除该列,因为它是表中唯一的列。
42815 数据类型、长度、小数位、值或 CCSID 无效。
42816 表达式中的日期时间值或持续时间无效。
42817 由于某个视图或约束依赖于该列,并且指定了 RESTRICT,或者由于该列包含在分区键中,或者由于该列是安全标号列,所以无法删除该列。
表 2. SQLSTATE 类代码 类
代码
含义 要获得子代码,
参阅...
00 完全成功完成 表 3
01 警告 表 4
02 无数据 表 5
07 动态 SQL 错误 表 6
08 连接异常 表 7
09 触发操作异常 表 8
0A 功能部件不受支持 表 9
0D 目标类型规范无效 表 10
0F 无效标记 表 11
0K RESIGNAL 语句无效 表 12
0N SQL/XML 映射错误 表 13
20 找不到 CASE 语句的条件 表 15
21 基数违例 表 16
22 数据异常 表 17
23 约束违例 表 18
24 无效的游标状态 表 19
25 无效的事务状态 表 20
26 无效 SQL 语句标识 表 21
28 无效权限规范 表 23
2D 无效事务终止 表 24
2E 无效连接名称 表 25
34 无效的游标名称 表 26
36 游标灵敏度异常 表 27
38 外部函数异常 表 28
39 外部函数调用异常 表 29
3B SAVEPOINT 无效 表 30
40 事务回滚 表 31
42 语法错误或访问规则违例 表 32
44 WITH CHECK OPTION 违例 表 33
46 Java DDL 表 34
51 无效应用程序状态 表 35
53 无效操作数或不一致的规范 表 36
54 超出 SQL 限制,或超出产品限制 表 37
55 对象不处于先决条件状态 表 38
56 其他 SQL 或产品错误 表 39
57 资源不可用或操作员干预 表 40
58 系统错误 表 41
5U 实用程序 表 42
类代码 00 完全成功完成
表 3. 类代码 00:完全成功完成 SQLSTATE 值
含义
00000 操作执行成功,并且未产生任何类型的警告或异常情况。
类代码 01 警告
表 4. 类代码 01:警告 SQLSTATE 值
含义
01002 发生 DISCONNECT 错误。
01003 从列函数的参数消去 NULL 值。
01004 字符串值在指定给具有较短长度的另一字符串数据类型时被截断。
01005 SQLDA 中的条目数不够。
01007 未授予特权。
0100C 从过程返回了一个或多个特殊结果集。
0100D 关闭的游标已在链中的下一个结果集上重新打开。
0100E 生成的过程大于允许的最大结果集数目。只有第一个整数结果集已经返回到调用者。
01503 结果列数比提供的主机变量数大。
01504 UPDATE 或 DELETE 语句不包括 WHERE 子句。
01506 对 DATE 或 TIMESTAMP 值进行了调整,以更正算术运算得出的无效日期。
01509 由于用户虚拟机中的存储器不够,取消游标的分块。
01515 已为主机变量指定了一个空值,因为列的非空值不在主机变量的范围之内。
01516 已忽略不可用的 WITH GRANT OPTION。
01517 用替代字符替换不能转换的字符。
01519 已为主机变量指定了一个空值,因为数字值超出范围。
01524 列函数的结果不包括由算术表达式求值得出的空值。
01526 隔离级别已升级。
01527 SET 语句引用的专用寄存器在 AS 上不存在。
01539 连接成功但只应使用 SBCS 字符。
01543 已忽略重复约束。
01545 未限定列名已解释为相关引用。
01550 索引未创建,因为具有指定描述的索引已经存在。
01560 忽略了一个冗余的 GRANT。
01562 在数据库配置文件中的新日志路径(newlogpth)无效。
01563 日志文件的当前路径(logpath)无效。日志文件路径被复位为缺省值。
01564 已为主机变量指定了空值,因为发生了被零除的错误。
01586 该语句导致一个或多个表自动置于设置完整性暂挂状态。
01589 语句包含有冗余规范。
01592 在引用 SOURCE 函数的 CREATE FUNCTION 语句中,或:
输入参数的长度、精度或小数位大于源函数相应参数的长度、精度或小数位;或
RETURNS 或 CAST FROM 参数的长度、精度或小数位比源函数的小;或
CREATE FUNCTION 语句中的 CAST FROM 参数的长度、精度或小数位比 RETURNS 参数的大。
运行时可能发生截断(那时可能会引起错误)。
01594 对于所有信息,SQLDA 内的条目数不够多(即,没有足够的描述符返回相异名称)。
01595 该视图已替换现有无效视图。
01596 没有为基于长字符串数据类型的单值类型创建比较函数。
01598 尝试激活活动的事件监视器,或尝试释放不活动的事件监视器。
01599 忽略 REBIND 上的绑定选项。
01602 优化级别已降低。
01603 CHECK DATA 处理过程中发现约束违例,已将其移至异常表。
01604 已经说明了 SQL 语句,但是未执行它。
01605 递归公共表表达式可能包含无限循环。
01606 节点或系统数据库目录是空的。
01607 只读事务中节点的时间差超过定义的阈值。
01608 已经替换了不受支持的值。
01609 生成的过程大于允许的最大结果集数目。只有第一个整数结果集已经返回到调用者。
01610 从过程返回了一个或多个特殊结果集。
01611 关闭的游标已在链中的下一个结果集上重新打开。
01614 定位器数小于结果集数。
01616 估计的 CPU 成本超出了资源限制。
01618 重新分发节点组是更改数据库分区所必需的。
01620 UNION ALL 的某些基本表可能是同一个表。
01621 检索到的 LOB 值可能已更改。
01622 语句成功完成,但在语句完成之后发生了系统错误。
01623 忽略 DEGREE 的值。
01625 模式名在 CURRENT PATH 中出现了多次。
01626 数据库只有一个活动的缓冲池。
01627 DATALINK 值可能无效,因为该表处理协调暂挂或协调不可能的状态。
01632 并发连接数超出了该产品的定义授权。
01633 可能不能使用具体化查询表来优化查询的处理。
01636 数据库管理器一直未验证非增量数据的完整性。
01637 未启用调试。
01639 联合对象可能需要调用程序具有对数据源对象的必要特权。
01641 Datalink 类型属性限制结构化类型的使用。
01642 对于最大的可能 USER 缺省值,列不足够长。
01643 对 SQL 例程中 SQLSTATE 或 SQLCODE 变量的赋值可能会被覆盖,不会激活任何处理程序。
01645 SQL 过程的可执行文件未保存在数据库目录中。
01648 忽略了 COMPRESS 列属性,因为对表取消激活了 VALUE COMPRESSION。
01649 缓冲池操作已经完成,但是直到下一次数据库重新启动才会生效。
01650 索引和表统计信息不一致。
01651 成功激活了事件监视器,但是某些监视信息可能丢失了。
01652 由于语句上下文而忽略了隔离子句。
01653 权限授予给 USER。因为权限名称大于 8 字节,所以不考虑组。
01654 未启动缓冲池。
01655 成功创建了事件监视器,但是至少有一个事件监视器目标表已存在。
01657 缓冲池操作在下一次数据库重新启动之后才会生效。
01665 列名或参数名被截断。
01667 可能不能使用视图来优化查询的处理。
01669 由于远程目录与本地目录之间的模式不一致,因此,未彻底更新指定昵称的统计信息。
01670 对新表来说,不存在缺省主表空间。
01671 高速缓存的语句的环境与当前环境不同。将使用当前环境来重新优化指定的语句。
01674 表空间属性对于查询性能不是最佳的。
01675 指定的表空间数超过了需要的表空间数。多余的表空间将被忽略。
01676 忽略了传送操作,因为授权标识已经是数据库对象的所有者。
01677 对于已经定义了插件的服务器忽略了包装器选项。
01678 对用户映射的更改只应用于联合目录表,而不应用于外部用户映射存储库。
01679 无法为指定的授权标识建立可信连接。
01684 不支持指定的语言环境。返回的消息使用的是英语语言环境。
01686 表空间正在从 REGULAR 转换为 LARGE。必须对此表空间中的表的索引进行重组或重建,以便支持大型 RID。
01689 在未连接到数据源的情况下完成了 SQL 编译。
0168A 在数据源上找不到源过程的程序包主体,或者它无效。
01H51 “MQSeries 应用程序消息传递接口”消息被截断。
01H52 例程的执行已完成,但是执行期间至少遇到了一个错误或警告。提供了更多信息。
01H53 例程遇到了警告。参阅 SQLCODE 以获取详细信息。
01HXX 由用户定义的函数或外部过程 CALL 返回了有效警告 SQLSTAE。
类代码 02 无数据
表 5. 类代码 02:无数据 SQLSTATE 值
含义
02000 发生下述异常之一:
SELECT INTO 语句或 INSERT 语句的子查询的结果为空表。
在搜索的 UPDATE 或 DELETE 语句内标识的行数为零。
在 FETCH 语句中引用的游标位置处于结果表最后一行之后。
02501 游标位置对于当前行的 FETCH 无效。
02502 检测到删除或更新孔
02506 遇到了错误,并且已按 RETURN DATA UNTIL 子句指定那样容许它。
类代码 07 动态 SQL 错误
表 6. 类代码 07:动态 SQL 错误 SQLSTATE 值
含义
07001 对于参数标记的数目来说,主机变量的数目不正确。
07002 调用参数列表或控制块无效。
07003 在 EXECUTE 语句内标识的语句是一条 select 语句,或未处于已预编译状态。
07004 动态参数需要 USING 子句或 INTO 子句。
07005 游标的语句名标识的是一个不能与游标关联的已预编译语句。
07006 由于其数据类型的缘故不能使用某输入主机变量。
类代码 08 连接异常
表 7. 类代码 08:连接异常 SQLSTATE 值
含义
08001 应用程序请求器不能建立连接。
08002 连接已存在。
08003 连接不存在。
08004 应用程序服务器拒绝了建立连接。
08007 事务解析未知。
08502 用 TWOPHASE 的 SYNCPOINT 运行的应用程序进程发出的 CONNECT 语句无效,因为无事务管理器可用。
08504 当处理指定的路径重命名配置文件时遇到错误。
类代码 09 触发操作异常
表 8. 类代码 09:触发操作异常 SQLSTATE 值
含义
09000 触发 SQL 语句失败。
类代码 0A 不支持功能部件
表 9. 类代码 0A:不支持功能部件 SQLSTATE 值
含义
0A001 CONNECT 语句无效,因为进程不处于可连接状态。
0A502 未对此数据库实例启用操作。
0A503 由于潜在的数据不一致,不能编译联合插入、更新或删除操作。
类代码 0D 目标类型规范无效
表 10. 类代码 0D:目标类型规范无效 SQLSTATE 值
含义
0D000 目标结构化数据类型规范是源结构化数据类型的正确子类型。
类代码 0F 无效标记
表 11. 类代码 OF:无效标记 SQLSTATE 值
含义
0F001 LOB 标记变量当前不表示任何值。
类代码 0K RESIGNAL 语句无效
表 12. 类代码 0K:RESIGNAL 语句无效 SQLSTATE 值
含义
0K000 RESIGNAL 语句不在处理程序中。
类代码 0N SQL/XML 映射错误
表 13. 类代码 0N:SQL/XML 映射错误 SQLSTATE 值
含义
0N002 无法将字符映射至有效 XML 字符。
类代码 10 XQuery 错误
表 14. 类代码 10:XQuery 错误 SQLSTATE 值
含义
10000 XQuery 错误。
10501 XQuery 表达式缺少静态或动态上下文组件的指定。
10502 在 XQuery 表达式的序言中遇到了错误。
10503 在 XQuery 或 XPath 表达式中定义了重复的名称。
10504 在无效 URI 中指定了 XQuery 名称空间声明。
10505 字符、标记或子句在 XQuery 表达式中缺少了或者无效。
10506 XQuery 表达式引用了一个未定义的名称。
10507 处理 XPath 或 XQuery 表达式时遇到了类型错误。
10508 XQuery 表达式在已计算的构造函数中包括一个无效的名称表达式。
10509 指定了不受支持的 XQuery 语言功能部件。
10510 未指定字符串文字作为强制类型转换表达式操作数或构造函数参数。
10601 在处理 XQuery 函数或运算符时遇到了算术错误。
10602 在处理 XQuery 函数或运算符时遇到了数据类型转换错误。
10603 在处理 XQuery 函数或运算符时遇到了字符处理错误。
10604 未提供文档上下文来处理 XQuery 函数。
10605 在处理 XQuery 函数或运算符时遇到了日期时间错误。
10606 没有上下文项用来处理 XQuery 函数或运算符。
10607 在处理 XQuery 函数或运算符时遇到了名称空间错误。
10608 在 XQuery 函数或运算符的参数中遇到了错误。
10609 在处理 XQuery 函数或运算符时遇到了正则表达式错误。
10610 在处理 XQuery 函数或运算符时遇到了类型错误。
10611 在处理 XQuery 函数或运算符时遇到了未标识的错误。
10901 XQuery 原子值超出了 DB2 XQuery 数据类型的范围。
10902 XQuery 原子值超过了 DB2 XQuery 运算符或函数的长度限制。
10903 已超过相匹配的 XQuery 节点数的内部限制。
类代码 20 找不到 CASE 语句的条件
表 15. 类代码 20:找不到 Case 语句的条件 SQLSTATE 值
含义
20000 找不到 CASE 语句的条件。
类代码 21 基数违例
表 16. 类代码 21:基数违例 SQLSTATE 值
含义
21000 SELECT INTO 的结果是一个多行的结果表,或者,基本谓词的子查询结果为多个值。
21501 对自引用表进行多行 INSERT 是无效的。
21502 主键的多行 UPDATE 是无效的。
21504 从删除规则为 RESTRICT 或 SET NULL 的自引用表进行多行 DELETE 是无效的。
21505 行函数返回的内容不能超过一行。
21506 表的同一行不能是多个更新、删除或插入操作的目标。
类代码 22 数据异常
表 17. 类代码22:数据异常 SQLSTATE 值
含义
22001 字符数据,发生右截断;例如,更新或插入值对于列来说太长(字符串),或者日期时间值由于太小而不能赋给主机变量。
22002 检测到空值或缺少指示符参数;例如,不能将空值赋给主机变量,因为没有指定指示符变量。
22003 数值超出范围。
22004 不能从定义为 PARAMETER STYLE GENERAL 的过程或者从用非空参数调用的类型保留方法中返回空值。
22007 检测到无效的日期时间格式;即指定了无效的字符串表示法或值。
22008 发生日期时间字段溢出;例如,对日期或时间戳记算术运算的结果不在有效日期范围之内。
2200G 大多数特定类型都不匹配。
2200L XML 值不是具有单个根元素的结构良好的文档。
2200M 未能将值作为结构良好的 XML 文档进行解析或者根据 XML 模式来验证该值。
2200S XML 注释无效。
2200T XML 处理指令无效。
2200W XML 值包含未能序列化的数据。
22011 发生子字符串错误;例如,SUBSTR 的参数超出范围。
22012 用零作除数是无效的。
22018 对于 CAST、DECIMAL、FLOAT、或 INTEGER 标量函数,字符值是无效的。
22019 LIKE 谓词有无效转义字符。
22021 某字符不在编码字符集中。
22024 以 NUL 结束的输入主机变量或参数不包含 NUL。
22025 LIKE 谓词字符串模式包含无效的转义字符。
2202D 配合 mutator 方法使用了空实例。
2202H 在 TABLESAMPLE 子句中指定的样本大小无效。
22501 变长字符串的长度控制字段为负值或大于最大值。
22504 混合数据值是无效的。
22506 对日期时间专用寄存器的引用无效,因为 TOD 时钟发生故障或操作系统时区参数超出范围。
22522 CCSID 值根本无效,对数据类型或子类型无效,或对编码方案无效。
22525 数据分区键值无效。
22526 键变换函数没有生成任何行或生成了重复的行。
22527 对多行 INSERT 操作检测到了无效的输入数据。
22532 在 XML 模式存储库中未找到 XSROBJECT。
22533 在 XML 模式存储库中未找到唯一的 XSROBJECT。
22534 XML 模式文档未通过使用包括或重新定义而连接至其他 XML 模式文档。
22535 XML 模式未声明指定的全局元素。
22536 XML 值不包含必需的根元素。
225D1 未启用指定的 XML 模式以进行分解。
225D2 在分解 XML 文档期间发生了 SQL 错误。
225D3 分解 XML 文档时遇到了对于 XML 模式类型无效的值。
225D4 分解 XML 文档时遇到了对于目标 SQL 类型无效的值。
225D5 分解 XML 文档时遇到了上下文中未知或无效的 XML 节点。
225D6 指定的 XML 模式需要迁移到当前版本以支持分解。
225D7 分解 XML 文档时遇到了一个根元素,该根元素不是 XML 模式中的复杂类型的全局元素。
225DE 无法启用 XML 模式以进行分解。
类代码 23 约束违例
表 18. 类代码 23:约束违例 SQLSTATE 值
含义
23001 RESTRICT 更新或删除规则防止父键被更新或删除。
23502 插入或更新值为空,但该列不能包含空值。
23503 外键的插入或更新值无效。
23504 NO ACTION 更新或删除规则防止父键被更新或删除。
23505 发生由唯一索引或唯一约束强加的约束违例。
23510 使用由 RLST 表强加的命令时发生约束违例。
23511 不能删除父行,因为检查约束限制该删除。
23512 不能添加检查约束,因为该表含有不满足约束定义的行。
23513 INSERT 或 UPDATE 的结果行不符合检查约束定义。
23514 检查数据处理中发现约束违例。
23515 未能创建唯一索引,或者不能添加唯一约束,因为该表包含指定键的重复值。
23520 不能定义外键,因为其所有的值都不同于父表的父键。
23521 对目录表的更新违反了内部约束。
23522 标识列值的范围或者序列用完。
23523 已经为安全标号列提供了无效值。
23524 UNION ALL 视图内的无效行移动。
23525 未能插入或更新 XML 值,这是因为在插入或更新 XML 列的索引期间检测到错误。
23526 未能创建 XML 列的索引,因为在将 XML 值插入到索引中时检测到错误。
类代码 24 无效的游标状态
表 19. 类代码 24:无效的游标状态 SQLSTATE 值
含义
24501 标识的游标未打开。
24502 在 OPEN 语句中标识的游标已经打开。
24504 在 UPDATE、DELETE、SET 或 GET 语句中标识的游标未定位在行上。
24506 在 PREPARE 中标识的语句是一个打开游标语句。
24510 对一个删除孔或更新孔尝试了
UPDATE 或 DELETE 操作。
24512 结果表与基本表不一致。
24513 不允许 FETCH NEXT、PRIOR、CURRENT 或 RELATIVE,原因是游标位置未知。
24514 先前的错误已禁用此游标。
24516 已对结果集指定了一个游标。
24517 外部函数或方法将游标保持为打开。
类代码 25 无效的事务状态
表 20. 类代码 25:无效的事务状态 SQLSTATE 值
含义
25000 插入、更新或删除操作在指定它的上下文中无效。
25001 该语句只允许作为工作单元的第一条语句。
25501 该语句只允许作为工作单元的第一条语句。
25502 操作在单个事务中不能多次出现。
类代码 26 无效 SQL 语句标识
表 21. 类代码 26:无效 SQL 语句标识 SQLSTATE 值
含义
26501 标识的语句不存在。
类代码 27 触发的数据更改违例
表 22. 类代码 27:触发的数据更改违例 SQLSTATE 值 含义
27000 试图在同一 SQL 语句中多次更改同一个表中的同一行。
类代码 28 无效权限规范
表 23. 类代码 28:无效权限规范 SQLSTATE 值
含义
28000 权限名称无效。
类代码 2D 无效事务终止
表 24. 类代码 2D:无效事务终止 SQLSTATE 值
含义
2D521 SQL COMMIT 或 ROLLBACK 在当前操作环境中无效。
2D522 ATOMIC 复合语句中不允许 COMMIT 和 ROLLBACK。
2D528 动态 COMMIT 对于应用程序执行环境无效。
2D529 动态 ROLLBACK 对于应用程序执行环境无效。
类代码 2E 无效连接名称
表 25. 类代码 2E:无效连接名称 SQLSTATE 值
含义
2E000 连接名称无效。
类代码 34 无效的游标名称
表 26. 类代码 34:无效的游标名称 SQLSTATE 值
含义
34000 游标名无效。
类代码 36 无效游标规范
表 27. 类代码 36:无效游标规范 SQLSTATE 值
含义
36001 不能为指定的 SELECT 语句定义敏感游标。
类代码 38 外部函数异常
表 28. 类代码 38:外部函数异常 SQLSTATE 值
含义
38XXX 外部例程或触发器返回有效错误 SQLSTATE。
38001 不允许外部例程执行 SQL 语句。
38002 例程尝试修改数据,但例程未定义为 MODIFIES SQL DATA。
38003 例程中不允许该语句。
38004 例程尝试读取数据,但例程未定义为 READS SQL DATA。
38501 (使用 SIMPLE CALL 或 SIMPLE CALL WITH NULLS 调用约定)调用用户定义的函数、外部过程或触发器时出错。
38502 不允许外部函数执行 SQL 语句。
38503 用户定义的函数异常终止(abend)。
38504 用户定义的函数已被用户中断,以停止可能的循环条件。
38505 FINAL CALL 上的例程中不允许 SQL 语句。
38506 函数因来自 OLE DB 提供程序的错误而失败。
38552 SYSFUN 模式(由 IBM 提供)中的函数已异常终止。
可以在消息正文中找到下列原因码之一:
01
数值超出范围
02
被零除
03
算术溢出或下溢
04
日期格式无效
05
时间格式无效
06
时间戳记格式无效
07
时间戳记持续时间的字符表示法无效
08
时间间隔类型无效(必须是 1、2、4、8、16、32、64、128、256 之一)
09
字符串太长
10
字符串函数中的长度或位置超出范围
11
浮点数的字符表示法无效
38553 系统模式中的例程已因错误而终止。
38H01 MQSeries 函数未能初始化。
38H02 MQSeries 的“应用程序消息传递接口”未能终止会话。
38H03 MQSeries 的“应用程序消息传递接口”未能正确地处理消息。
38H04 MQSeries 的“应用程序消息传递接口”未能发送消息。
38H05 MQSeries 的“应用程序消息传递接口”未能读取/接收消息。
38H06 MQSeries 的“应用程序消息传递接口”预订(不预订)请求失败。
38H07 MQSeries 的“应用程序消息传递接口”未能落实工作单元。
38H08 MQSeries 的“应用程序消息传递接口”策略错误。
38H09 MQSeries XA(两阶段落实)API 调用错误。
38H0A MQSeries 的“应用程序消息传递接口”未能回滚工作单元。
类代码 39 外部函数调用异常
表 29. 类代码 39:外部函数调用异常 SQLSTATE 值
含义
39001 用户定义的函数已返回无效 SQLSTATE。
39004 不允许 IN 或 INOUT 参数为空值。
39501 与参数相关联的 eye-catcher(引人注目的事物)已被修改。
类代码 3B SAVEPOINT 无效
表 30. 类代码 3B:SAVEPOINT 无效 SQLSTATE 值
含义
3B001 保存点无效。
3B002 已经达到最大保存点数目。
3B501 检测到重复的保存点名。
3B502 指定了 RELEASE 或 ROLLBACK TO SAVEPOINT,但是保存点不存在。
3B503 在触发器或全局事务中不允许 SAVEPOINT、 RELEASE SAVEPOINT 或 ROLLBACK TO SAVEPOINT。
类代码 40 事务回滚
表 31. 类代码 40:事务回滚 SQLSTATE 值
含义
40001 发生了伴随自动回滚的超时或死锁。
40003 语句完整性未知。
40504 由于系统错误导致工作单元被回滚。
40506 由于 SQL 错误,当前事务已回滚。
40507 由于创建索引时发生故障,因此当前事务已回滚。
类代码 42 语法错误或访问规则违例
表 32. 类代码 42:语法错误或访问规则违例 SQLSTATE 值
含义
42501 授权标识不具有对标识对象执行指定操作的特权。
42502 授权标识不具有执行指定操作的特权。
42504 无法从指定的权限名撤销指定的特权、安全标号或免除凭证。
42506 发生所有者授权失败。
42508 不能将指定的数据库特权授予 PUBLIC。
42509 因为 STATICRULES 选项而未授权 SQL 语句。
42511 未能检索 DATALINK 值。
42512 授权标识对受保护列没有访问权。
42514 授权标识不具有对象的所有权需要的特权。
42516 用户映射存储库中的认证失败。
42519 不允许此授权标识对受保护表执行操作。
42520 由于此授权标识没有安全标号,所以无法执行内置函数。
42521 无法将权限或特权授予指定的授权标识。
42522 此授权标识没有凭证,因此无法保护列或者对该列除去保护。
42601 字符、标记或子句无效或丢失。
42602 检测到名称中有无效字符。
42603 检测到未终止的字符串常量。
42604 检测到无效数字或字符串常量。
42605 为标量函数指定的参数的数目无效。
42606 检测到无效十六进制常数。
42607 列函数的操作数无效。
42608 在 VALUES 中使用 NULL 或 DEFAULT 是无效的。
42609 运算符或谓词的所有操作数都是参数标记。
42610 不允许参数标记。
42611 列或参数定义无效。
42612 语句字符串是一条 SQL 语句,它在它所出现的上下文中是不可接受的。
42613 子句互斥。
42614 重复关键字无效。
42615 检测到无效备用项。
42616 指定了无效的选项。
42617 语句字符串是空白或空的。
42618 不允许主机变量。
42620 对 UPDATE 子句指定了只读 SCROLL。
42621 检查约束无效。
42622 名称或标号太长。
42623 不能指定 DEFAULT 子句。
42625 CASE 表达式无效。
42627 必须在使用 EXPRESSION AS 子句的谓词规范之前指定 RETURNS 子句。
42628 在变换定义中多次定义了 TO SQL 或 FROM SQL 变换函数。
42629 必须为 SQL 例程指定参数名。
42630 在嵌套复合语句中不能存在 SQLSTATE 或 SQLCODE 变量声明。
42631 SQL 函数或方法中的 RETURN 语句必须包括返回值。
42633 XMLATTRIBUTES 或 XMLFOREST 的参数需要 AS 子句。
42634 XML 名称无效。
42635 XML 名称空间前缀无效。
42636 缺少 BY REF 子句,或者不正确使用了该子句。
42637 无法在 DECLARE CURSOR 语句中指定 XQuery 表达式。
42701 在插入或更新操作或 SET 转换变量语句中检测到重复列名。
42702 由于名称重复,列引用有歧义。
42703 检测到一个未定义的列、属性或参数名。
42704 检测到未定义的对象或约束名。
42705 检测到未定义的服务器名。
42707 ORDER BY 内的列名不标识结果表中的列。
42709 在键列列表中指定了重复的列名。
42710 检测到重复的对象或约束名。
42711 在对象定义或 ALTER 语句中检测到重复列名或属性名。
42712 在 FROM 子句中检测到重复的表标志符。
42713 在对象列表中检测到重复对象。
42720 在节点目录内未找到远程数据库的节点名。
42723 模式中已经存在带有相同特征符的函数。
42724 不能访问用于用户定义的函数或过程的外部程序。
42725 直接引用了例程(不是通过特征符或者通过特定实例名进行引用),但是该例程有多个特定实例。
42726 检测到指定的派生表的名称重复。
42727 对新表来说,不存在缺省主表空间。
42728 在节点组定义中检测到重复节点。
42729 节点未定义。
42730 容器名已由另一表空间使用。
42731 容器名已由该表空间使用。
42732 在 SET CURRENT PATH 语句中检测到重复的模式名。
42734 检测到重复的参数名、SQL 变量名、游标名、条件名或标号。
42735 对缓冲池,未定义表空间的节点组。
42736 在 LEAVE 语句上指定的标号找不到或无效。
42737 未定义在处理程序中指定的条件。
42738 在 FOR 语句的 DECLARE CURSOR 语句中指定了重复的列名或未命名的列。
42739 检测到重复的变换。
42740 未找到指定类型的变换。未删除任何变换。
42741 未对数据类型定义变换组。
42742 类型表或带类型视图层次结构中已存在同类子表或子视图。
42743 在索引扩展名中未找到搜索方法。
42744 在变换组中未定义 TO SQL 或 FROM SQL 变换函数。
42745 例程将用现有方法定义覆盖关系。
42746 在同一类型层次结构中,方法名不能与结构化类型名相同。
42748 存储路径对于数据库来说已存在或者被指定了多次。
42749 对于 XML 模式来说,已经存在具有相同目标名称空间和模式位置的 XML 模式文档。
4274A 在 XML 模式存储库中未找到 XSROBJECT。
4274B 在 XML 模式存储库中未找到唯一的 XSROBJECT。
4274F 在安全标号组件中未定义组件元素。
4274G 在给定安全标号所使用的安全标号策略中未定义安全标号组件。
4274H 指定的安全策略不存在指定的访问规则。
4274I 指定的安全策略不存在安全标号。
4274J 数据库分区组已被此缓冲池使用。
42802 插入或更新值的数目与列数不相同。
42803 在 SELECT 或 HAVING 子句中的列引用无效,因为它不是分组列;或者在 GROUP BY 子句中的列引用无效。
42804 CASE 表达式中的结果表达式不兼容。
42805 ORDER BY 子句中的整数不标识结果表中的列。
42806 不能将某值赋予某主机变量, 因为数据类型不兼容。
42807 对该对象不允许执行 INSERT、UPDATE 或 DELETE。
42808 插入或更新操作中标识的列不可更新。
42809 标识的对象不是语句所应用的对象类型。
42810 FOREIGN KEY 子句中没有标识基本表。
42811 指定的列数与 SELECT 子句中的列数不相同。
42813 WITH CHECK OPTION 不能用于指定的视图。
42814 无法删除该列,因为它是表中唯一的列。
42815 数据类型、长度、小数位、值或 CCSID 无效。
42816 表达式中的日期时间值或持续时间无效。
42817 由于某个视图或约束依赖于该列,并且指定了 RESTRICT,或者由于该列包含在分区键中,或者由于该列是安全标号列,所以无法删除该列。
发表评论
-
db2数据类型
2009-03-04 11:36 3762内置数据类型可以分成 ... -
带你轻松接触“DB2”数据库中的数据类型
2009-03-04 11:34 968DB2数据库的内置数据类 ... -
注意DB2 数据类型
2009-03-04 11:31 1374insert into SONEDBA.FSTDAYSCHED ... -
DB2的字段类型
2009-02-18 11:56 2610DB2的字段类型如下: 字段类型 描述 字段长度及其缺省 ... -
left join/right join/inner join操作演示
2009-02-17 17:04 1157[转] left join/right j ... -
Sql 左连接,右连接
2009-01-23 15:32 1375练习: 学生表 T_Students(StudentID ... -
select distinct理解
2009-01-23 11:37 1753“select distinct (姓名)as姓名”的意思是: ... -
db2 驱动程序(db2java.jar 和db2jcc.jar)
2009-01-21 17:17 9575/**了解基础情况**/ 对于Java程序员而言,DB2 提供 ... -
经典收藏SQL语句合集(来自大家的智慧)2
2009-01-17 12:34 1824n久前整理过的一些最基本的,随意看看. 1.Insert (添 ... -
经典收藏SQL语句合集(来自大家的智慧)1
2009-01-17 12:30 2866关于索引,推荐转载的 ... -
SQL关于特殊字符处理的基本方法
2009-01-17 11:11 5088一定要对用户可能输入的诸如引号,尖括号等特殊字符给予足够重视, ... -
SQL 对特殊字符的处理
2009-01-17 10:49 1074字符:' 请看一下语句有什么问题: insert into s ... -
DB2 常用问题 解答
2009-01-16 12:38 1288以下主要以DB2 7.X为基础的. 以下的字符为小写. ... -
DB2 SQLSTATE 消息 (二)
2009-01-16 12:06 425242818 运算符或函数的操作数不兼容或者不可比较。 428 ...
相关推荐
通过阅读"db2sqlstate.txt"和"db2sqlstate中文.txt",你可以建立一个强大的故障排除库,从而在面对各种DB2错误时更加从容不迫。这两个文件是DB2用户必备的参考资料,它们将帮助你更好地理解和处理DB2环境中可能出现...
当DB2返回一个SQLSTATE消息时,它通常会伴随着一个SQLCODE,这是一个整数值,提供了更多的错误细节。负数的SQLCODE表示错误,正数通常表示警告。这些错误信息可以帮助开发者诊断问题并采取相应的解决措施。 为了...
DB2 SQLSTATE全集是DB2数据库中用于标识SQL语句执行过程中遇到的错误或警告的一种标准编码系统。SQLSTATE由5个字符组成,前两位代表错误类别,后三位代表具体的错误子类。这些代码提供了关于数据库操作结果的详细...
在文档"DB2 sqlstate错误码大全.doc"中,你可以找到从SQL0000到SQL9399这一范围内的所有错误码的详细解释。这些错误码通常按照以下格式给出: 1. 错误码(如SQL0000):前两位表示大类错误,中间两位表示子类错误,...
DB2 SQLSTATE 错误码对照表是DB2数据库系统中用于识别和处理查询或操作过程中发生的问题的一个标准代码系统。这些错误码帮助开发者和管理员理解遇到的具体问题,并找到解决问题的策略。以下是对DB2 SQLSTATE错误码的...
标题中的"DB2错误代码(SQLSTATE消息异常)"指的是在DB2数据库操作中遇到了特定的SQLSTATE异常,这可能是由于多种原因,如语法错误、权限问题、数据不一致、系统资源不足等。错误代码通常会伴随着一个详细的错误消息,...
DB2 SQLSTATE CODE 是一种错误代码系统,由 IBM 开发的关系数据库管理系统 DB2 使用。它提供了一种标准化的方式来报告错误和警告信息,以帮助开发者和管理员快速定位和解决问题。 SQLSTATE 代码是一个五字符的...
`sqlcode`是一个整数值,通常负值表示错误,正值表示警告,而`sqlstate`则是一个五位的字母数字代码,提供了更详细的错误分类。 1. **成功完成**: - `sqlcode=0`, `sqlstate=00000`:表示SQL语句执行成功,没有...
标题与描述均指出了一个核心问题——“DB2_SQLSTATE_消息异常”,这实际上是在谈论IBM DB2数据库系统中的SQLSTATE值及其引发的异常情况。SQLSTATE值是SQL标准中定义的一系列五字符代码,用于标识SQL语句执行的状态,...
涵盖所有常见DB2 sqlcode sqlstate的信息中文解释大全。 是进行DB2相关学习和工作的必备参考资料! 内容粗览: DB2错误信息(按sqlcode排序) sqlcode sqlstate 说明 000 00000 SQL语句成功完成 01xxx SQL语句成功...
在 DB2 数据库系统中,当执行 SQL 语句时遇到问题或错误,系统会返回一个称为 SQLSTATE 的五位字符代码来标识具体的问题类型。这些 SQLSTATE 代码分为不同的类别(类代码),每个类别代表一种特定类型的错误或警告。...
DB2 是 IBM 公司开发的一种关系数据库管理系统,广泛应用于企业级数据库管理。然而,在使用 DB2 过程中,可能会遇到各种错误码,这些错误码使得用户感到困惑和困难。因此,本文旨在整理 DB2 的 SQL、sqlcode、...
以上所述是小编给大家介绍的详解DB2 sqlstate 57016 SQLCODE=-668 原因码 “7”错误的快速解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站...
在使用DB2过程中,可能会遇到各种错误代码,其中SQLSTATE 57016与SQLCODE -668,特别是原因码“7”,是一个常见的错误,通常表示在尝试执行数据库操作时遇到了权限问题。本篇文章将深入探讨这个错误的原因,并提供...
db2sql存储table数据库nullsqlcode sqlstate 说明 000 00000 SQL语句成功完成 01xxx SQL语句成功完成,但是有警告 +012 01545 未限定的列名被解释为一个有相互关系的引用 +098 01568 动态SQL语句用分号结束...
在DB2中,错误码通常由SQLCODE和SQLSTATE两部分组成: - **SQLCODE**:是一个整数值,用来表示错误或警告的状态。正数表示警告,负数表示错误。 - **SQLSTATE**:是一个五字符的字符串,用来提供关于错误或警告的更...
除了SQLCODE和SQLSTATE,DB2还提供了一系列的SQL消息,这些消息包含更人性化的错误描述,便于理解。例如,“SQL0104N 数据库管理器检测到与数据库的连接丢失”就是一条典型的SQL消息。 ### 结论 理解DB2中的...
DB2异常消息大全主要涵盖了DB2数据库在运行过程中可能遇到的各种错误情况,这些错误通常以SQLSTATE的形式出现,每个SQLSTATE由五位数字组成,分为两部分:类代码(前两位)和次类代码(后三位)。下面我们将详细解读...
在数据库管理领域,DB2作为IBM的一款旗舰级产品,广泛应用于各类企业级应用中。然而,在实际使用过程中难免会遇到各种各样的错误,了解并掌握这些错误代码及其含义对于及时解决问题至关重要。本文将基于提供的DB2...