SQLSTATE消息大全.docx
《SQLSTATE消息大全.docx》由会员分享,可在线阅读,更多相关《SQLSTATE消息大全.docx(45页珍藏版)》请在冰豆网上搜索。
![SQLSTATE消息大全.docx](https://file1.bdocx.com/fileroot1/2023-4/16/0e63342b-900c-4a26-8166-34b8ad89deb8/0e63342b-900c-4a26-8166-34b8ad89deb81.gif)
SQLSTATE消息大全
SQLSTATE消息大全
本文列示SQLSTATE及其含义。
SQLSTATE是按类代码进行分组的。
SQLSTATE类代码类
00完全成功完成
01警告
02无数据
07动态SQL错误
08连接异常
09触发操作异常
0A功能部件不受支持
0D目标类型规范无效
0F无效标记
0KRESIGNAL语句无效
0NSQL/XML映射错误
20找不到CASE语句的条件
21基数违例
22数据异常
23约束违例
24无效的游标状态
25无效的事务状态
26无效SQL语句标识
28无效权限规范
2D无效事务终止
2E无效连接名称
34无效的游标名称
36游标灵敏度异常
38外部函数异常
39外部函数调用异常
3BSAVEPOINT无效
40事务回滚
42语法错误或访问规则违例
44WITHCHECKOPTION违例
46JavaDDL
51无效应用程序状态
53无效操作数或不一致的规范
54超出SQL限制,或超出产品限制
55对象不处于先决条件状态
56其他SQL或产品错误
57资源不可用或操作员干预
58系统错误
5U实用程序
类代码00完全成功完成
00000操作执行成功,并且未产生任何类型的警告或异常情况。
类代码01警告
01002发生DISCONNECT错误。
01003从列函数的参数消去NULL值。
01004字符串值在指定给具有较短长度的另一字符串数据类型时被截断。
01005SQLDA中的条目数不够。
01007未授予特权。
0100C从过程返回了一个或多个特殊结果集。
0100D关闭的游标已在链中的下一个结果集上重新打开。
0100E生成的过程大于允许的最大结果集数目。
只有第一个整数结果集已经返回到调用者。
01503结果列数比提供的主机变量数大。
01504UPDATE或DELETE语句不包括WHERE子句。
01506对DATE或TIMESTAMP值进行了调整,以更正算术运算得出的无效日期。
01509由于用户虚拟机中的存储器不够,取消游标的分块。
01515已为主机变量指定了一个空值,因为列的非空值不在主机变量的范围之内。
01516已忽略不可用的WITHGRANTOPTION。
01517用替代字符替换不能转换的字符。
01519已为主机变量指定了一个空值,因为数字值超出范围。
01524列函数的结果不包括由算术表达式求值得出的空值。
01526隔离级别已升级。
01527SET语句引用的专用寄存器在AS上不存在。
01539连接成功但只应使用SBCS字符。
01543已忽略重复约束。
01545未限定列名已解释为相关引用。
01550索引未创建,因为具有指定描述的索引已经存在。
01560忽略了一个冗余的GRANT。
01562在数据库配置文件中的新日志路径(newlogpth)无效。
01563日志文件的当前路径(logpath)无效。
日志文件路径被复位为缺省值。
01564已为主机变量指定了空值,因为发生了被零除的错误。
01586该语句导致一个或多个表自动置于设置完整性暂挂状态。
01589语句包含有冗余规范。
01592在引用SOURCE函数的CREATEFUNCTION语句中,或:
输入参数的长度、精度或小数位大于源函数相应参数的长度、精度或小数位;或
RETURNS或CASTFROM参数的长度、精度或小数位比源函数的小;或
CREATEFUNCTION语句中的CASTFROM参数的长度、精度或小数位比RETURNS参数的大。
运行时可能发生截断(那时可能会引起错误)。
01594对于所有信息,SQLDA内的条目数不够多(即,没有足够的描述符返回相异名称)。
01595该视图已替换现有无效视图。
01596没有为基于长字符串数据类型的单值类型创建比较函数。
01598尝试激活活动的事件监视器,或尝试释放不活动的事件监视器。
01599忽略REBIND上的绑定选项。
01602优化级别已降低。
01603CHECKDATA处理过程中发现约束违例,已将其移至异常表。
01604已经说明了SQL语句,但是未执行它。
01605递归公共表表达式可能包含无限循环。
01606节点或系统数据库目录是空的。
01607只读事务中节点的时间差超过定义的阈值。
01608已经替换了不受支持的值。
01609生成的过程大于允许的最大结果集数目。
只有第一个整数结果集已经返回到调用者。
01610从过程返回了一个或多个特殊结果集。
01611关闭的游标已在链中的下一个结果集上重新打开。
01614定位器数小于结果集数。
01616估计的CPU成本超出了资源限制。
01618重新分发节点组是更改数据库分区所必需的。
01620UNIONALL的某些基本表可能是同一个表。
01621检索到的LOB值可能已更改。
01622语句成功完成,但在语句完成之后发生了系统错误。
01623忽略DEGREE的值。
01625模式名在CURRENTPATH中出现了多次。
01626数据库只有一个活动的缓冲池。
01627DATALINK值可能无效,因为该表处理协调暂挂或协调不可能的状态。
01632并发连接数超出了该产品的定义授权。
01633可能不能使用具体化查询表来优化查询的处理。
01636数据库管理器一直未验证非增量数据的完整性。
01637未启用调试。
01639联合对象可能需要调用程序具有对数据源对象的必要特权。
01641Datalink类型属性限制结构化类型的使用。
01642对于最大的可能USER缺省值,列不足够长。
01643对SQL例程中SQLSTATE或SQLCODE变量的赋值可能会被覆盖,不会激活任何处理程序。
01645SQL过程的可执行文件未保存在数据库目录中。
01648忽略了COMPRESS列属性,因为对表取消激活了VALUECOMPRESSION。
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无数据
02000发生下述异常之一:
SELECTINTO语句或INSERT语句的子查询的结果为空表。
在搜索的UPDATE或DELETE语句内标识的行数为零。
在FETCH语句中引用的游标位置处于结果表最后一行之后。
02501游标位置对于当前行的FETCH无效。
02502检测到删除或更新孔
02506遇到了错误,并且已按RETURNDATAUNTIL子句指定那样容许它。
类代码07动态SQL错误
07001对于参数标记的数目来说,主机变量的数目不正确。
07002调用参数列表或控制块无效。
07003在EXECUTE语句内标识的语句是一条select语句,或未处于已预编译状态。
07004动态参数需要USING子句或INTO子句。
07005游标的语句名标识的是一个不能与游标关联的已预编译语句。
07006由于其数据类型的缘故不能使用某输入主机变量。
类代码08连接异常
08001应用程序请求器不能建立连接。
08002连接已存在。
08003连接不存在。
08004应用程序服务器拒绝了建立连接。
08007事务解析未知。
08502用TWOPHASE的SYNCPOINT运行的应用程序进程发出的CONNECT语句无效,因为无事务管理器可用。
08504当处理指定的路径重命名配置文件时遇到错误。
类代码09触发操作异常
09000触发SQL语句失败。
类代码0A不支持功能部件
0A001CONNECT语句无效,因为进程不处于可连接状态。
0A502未对此数据库实例启用操作。
0A503由于潜在的数据不一致,不能编译联合插入、更新或删除操作。
类代码0D目标类型规范无效
0D000目标结构化数据类型规范是源结构化数据类型的正确子类型。
类代码0F无效标记
0F001LOB标记变量当前不表示任何值。
类代码0KRESIGNAL语句无效
0K000RESIGNAL语句不在处理程序中。
类代码0NSQL/XML映射错误
0N002无法将字符映射至有效XML字符。
类代码10XQuery错误
10000XQuery错误。
10501XQuery表达式缺少静态或动态上下文组件的指定。
10502在XQuery表达式的序言中遇到了错误。
10503在XQuery或XPath表达式中定义了重复的名称。
10504在无效URI中指定了XQuery名称空间声明。
10505字符、标记或子句在XQuery表达式中缺少了或者无效。
10506XQuery表达式引用了一个未定义的名称。
10507处理XPath或XQuery表达式时遇到了类型错误。
10508XQuery表达式在已计算的构造函数中包括一个无效的名称表达式。
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函数或运算符时遇到了未标识的错误。
10901XQuery原子值超出了DB2XQuery数据类型的范围。
10902XQuery原子值超过了DB2XQuery运算符或函数的长度限制。
10903已超过相匹配的XQuery节点数的内部限制。
类代码20找不到CASE语句的条件
20000找不到CASE语句的条件。
类代码21基数违例
21000SELECTINTO的结果是一个多行的结果表,或者,基本谓词的子查询结果为多个值。
21501对自引用表进行多行INSERT是无效的。
21502主键的多行UPDATE是无效的。
21504从删除规则为RESTRICT或SETNULL的自引用表进行多行DELETE是无效的。
21505行函数返回的内容不能超过一行。
21506表的同一行不能是多个更新、删除或插入操作的目标。
类代码22数据异常
22001字符数据,发生右截断;例如,更新或插入值对于列来说太长(字符串),或者日期时间值由于太小而不能赋给主机变量。
22002检测到空值或缺少指示符参数;例如,不能将空值赋给主机变量,因为没有指定指示符变量。
22003数值超出范围。
22004不能从定义为PARAMETERSTYLEGENERAL的过程或者从用非空参数调用的类型保留方法中返回空值。
22007检测到无效的日期时间格式;即指定了无效的字符串表示法或值。
22008发生日期时间字段溢出;例如,对日期或时间戳记算术运算的结果不在有效日期范围之内。
2200G大多数特定类型都不匹配。
2200LXML值不是具有单个根元素的结构良好的文档。
2200M未能将值作为结构良好的XML文档进行解析或者根据XML模式来验证该值。
2200SXML注释无效。
2200TXML处理指令无效。
2200WXML值包含未能序列化的数据。
22011发生子字符串错误;例如,SUBSTR的参数超出范围。
22012用零作除数是无效的。
22018对于CAST、DECIMAL、FLOAT、或INTEGER标量函数,字符值是无效的。
22019LIKE谓词有无效转义字符。
22021某字符不在编码字符集中。
22024以NUL结束的输入主机变量或参数不包含NUL。
22025LIKE谓词字符串模式包含无效的转义字符。
2202D配合mutator方法使用了空实例。
2202H在TABLESAMPLE子句中指定的样本大小无效。
22501变长字符串的长度控制字段为负值或大于最大值。
22504混合数据值是无效的。
22506对日期时间专用寄存器的引用无效,因为TOD时钟发生故障或操作系统时区参数超出范围。
22522CCSID值根本无效,对数据类型或子类型无效,或对编码方案无效。
22525数据分区键值无效。
22526键变换函数没有生成任何行或生成了重复的行。
22527对多行INSERT操作检测到了无效的输入数据。
22532在XML模式存储库中未找到XSROBJECT。
22533在XML模式存储库中未找到唯一的XSROBJECT。
22534XML模式文档未通过使用包括或重新定义而连接至其他XML模式文档。
22535XML模式未声明指定的全局元素。
22536XML值不包含必需的根元素。
225D1未启用指定的XML模式以进行分解。
225D2在分解XML文档期间发生了SQL错误。
225D3分解XML文档时遇到了对于XML模式类型无效的值。
225D4分解XML文档时遇到了对于目标SQL类型无效的值。
225D5分解XML文档时遇到了上下文中未知或无效的XML节点。
225D6指定的XML模式需要迁移到当前版本以支持分解。
225D7分解XML文档时遇到了一个根元素,该根元素不是XML模式中的复杂类型的全局元素。
225DE无法启用XML模式以进行分解。
类代码23约束违例
23001RESTRICT更新或删除规则防止父键被更新或删除。
23502插入或更新值为空,但该列不能包含空值。
23503外键的插入或更新值无效。
23504NOACTION更新或删除规则防止父键被更新或删除。
23505发生由唯一索引或唯一约束强加的约束违例。
23510使用由RLST表强加的命令时发生约束违例。
23511不能删除父行,因为检查约束限制该删除。
23512不能添加检查约束,因为该表含有不满足约束定义的行。
23513INSERT或UPDATE的结果行不符合检查约束定义。
23514检查数据处理中发现约束违例。
23515未能创建唯一索引,或者不能添加唯一约束,因为该表包含指定键的重复值。
23520不能定义外键,因为其所有的值都不同于父表的父键。
23521对目录表的更新违反了内部约束。
23522标识列值的范围或者序列用完。
23523已经为安全标号列提供了无效值。
23524UNIONALL视图内的无效行移动。
23525未能插入或更新XML值,这是因为在插入或更新XML列的索引期间检测到错误。
23526未能创建XML列的索引,因为在将XML值插入到索引中时检测到错误。
类代码24无效的游标状态
24501标识的游标未打开。
24502在OPEN语句中标识的游标已经打开。
24504在UPDATE、DELETE、SET或GET语句中标识的游标未定位在行上。
24506在PREPARE中标识的语句是一个打开游标语句。
24510对一个删除孔或更新孔尝试了UPDATE或DELETE操作。
24512结果表与基本表不一致。
24513不允许FETCHNEXT、PRIOR、CURRENT或RELATIVE,原因是游标位置未知。
24514先前的错误已禁用此游标。
24516已对结果集指定了一个游标。
24517外部函数或方法将游标保持为打开。
类代码25无效的事务状态
25000插入、更新或删除操作在指定它的上下文中无效。
25001该语句只允许作为工作单元的第一条语句。
25501该语句只允许作为工作单元的第一条语句。
25502操作在单个事务中不能多次出现。
类代码26无效SQL语句标识
26501标识的语句不存在。
类代码27触发的数据更改违例
27000试图在同一SQL语句中多次更改同一个表中的同一行。
类代码28无效权限规范
28000权限名称无效。
类代码2D无效事务终止
2D521SQLCOMMIT或ROLLBACK在当前操作环境中无效。
2D522ATOMIC复合语句中不允许COMMIT和ROLLBACK。
2D528动态COMMIT对于应用程序执行环境无效。
2D529动态ROLLBACK对于应用程序执行环境无效。
类代码2E无效连接名称
2E000连接名称无效。
类代码34无效的游标名称
34000游标名无效。
类代码36无效游标规范
36001不能为指定的SELECT语句定义敏感游标。
类代码38外部函数异常
38XXX外部例程或触发器返回有效错误SQLSTATE。
38001不允许外部例程执行SQL语句。
38002例程尝试修改数据,但例程未定义为MODIFIESSQLDATA。
38003例程中不允许该语句。
38004例程尝试读取数据,但例程未定义为READSSQLDATA。
38501(使用SIMPLECALL或SIMPLECALLWITHNULLS调用约定)调用用户定义的函数、外部过程或触发器时出错。
38502不允许外部函数执行SQL语句。
38503用户定义的函数异常终止(abend)。
38504用户定义的函数已被用户中断,以停止可能的循环条件。
38505FINALCALL上的例程中不允许SQL语句。
38506函数因来自OLEDB提供程序的错误而失败。
38552SYSFUN模式(由IBM提供)中的函数已异常终止。
可以在消息正文中找到下列原因码之一:
01
数值超出范围
02
被零除
03
算术溢出或下溢
04
日期格式无效
05
时间格式无效
06
时间戳记格式无效
07
时间戳记持续时间的字符表示法无效
08
时间间隔类型无效(必须是1、2、4、8、16、32、64、128、256之一)
09
字符串太长
10
字符串函数中的长度或位置超出范围
11
浮点数的字符表示法无效
38553系统模式中的例程已因错误而终止。
38H01MQSeries函数未能初始化。
38H02MQSeries的“应用程序消息传递接口”未能终止会话。
38H03MQSeries的“应用程序消息传递接口”未能正确地处理消息。
38H04MQSeries的“应用程序消息传递接口”未能发送消息。
38H05MQSeries的“应用程序消息传递接口”未能读取/接收消息。
38H06MQSeries的“应用程序消息传递接口”预订(不预订)请求失败。
38H07MQSeries的“应用程序消息传递接口”未能落实工作单元。
38H08MQSeries的“应用程序消息传递接口”策略错误。
38H09MQSeriesXA(两阶段落实)API调用错误。
38H0AMQSeries的“应用程序消息传递接口”未能回滚工作单元。
类代码39外部函数调用异常
39001用