DB2-sqlcode
DB2错误代码SQL返回码信息对照

DB2错误代码/SQL返回码信息对用COBOL链接DB2时,出现DB2错误信息时,如果你当然你也可以直接在db2的命令行下输入:db2 ? sqlcode sqlstate0001xxx12154598156810020001101561111159011715251621514203155220415322061533218153721915322201546236100523715942381005239100530415153311520339156939416293951628402152140315224341608445100446201Hxx46416094661610494161449516165351591541154355115485521542558151656115235621560585162559915966101566625151862615296451528 6501538 6531551 6551597 6581600 6641540 7381530 799157 8021519 8061553 8071554 8631539 200056094 20021624 20071602 301001558 -742601 -1042603 -2942601 -6042815 -8442612 -9742601 -10154001 -10254002 -10342604 -10442601 -10542604 -10742622 -10842601 -10942601 -11042606 -11142901 -11242607 -11342602 -11442961 -11542601 -11742802 -11842902 -11942803 -12042903 -12142701 -12242803 -12342601 -12542805 -12642829 -12742905 -12842601 -12954004 -1302201922025 -13142818 -13242824 -13342906-13442907 -13654005 -13754006 -13822011-14242612-14458003 -14742809 -14842809 -15042807 -15142808 -15242809 -15342908 -15442909 -15642809 -15742810 -15842811 -15942089 -16042813 -16144000 -16442502 -17042605 -17142815 -17342801 -18022007 -18122001 -18242816 -18322008 -18442610 -18557008 -18622505 -18722506 -18822503 -18922522 -19042837 -19122504 -19742877 -19842617 -19942601 -20342702 -20442704 -20542703 -20642703 -20842707 -21242712 -21442822 -21942704 -22055002 -22155002 -22942708 -240428B4-25042718 -25142602 -30022024 -30142895 -3022200122003 -30342806 -30422003 -30522002 -30922512 -31022501 -31122501 -31242618 -3137001 -31442714 -32722525 -33022021 -33122021 -33257017 -33356010 -33842972 -33956082 -35042962 -35156084 -35256084 -35542993 -372428C1 -39042887 -39242855 -39638505 -397428D3 -398428D2 -39922511 -40054027 -40142818 -40242819 -40422001 -40542820 -40622003 -40723502 -40842821 -40942607 -41042820 -41156040 -41242823 -41322003 -41442824 -41542825 -41642907 -41742609 -41842610 -41942911 -42022018 -42142826-4230F001 -4262D528 -4272D529 -43038503 -43322001 -435428B3 -438xxxxx -44042884 -44142601 -44342601 -44442724 -44942878 -45039501 -45142815 -45342880 -45442723 -45542882 -45642710 -45742939 -45842883 -46339001 -46942886 -47039002 -47155023 -47224517 -47342918 -47542866 -47642725 -47842893 -48051030 -48251030 -48342885 -48738001-49142601-49242879 -49557051 -49651033-49754041-49924516 -50024501 -50124501 -50224502 -50342912 -50434000 -50724501 -50824504 -50942827-51042828 -51142829 -51256023 -51342924-51626501 -5177005 -5187003 -51924506 -52551015 -52642995 -53023503-53123504-53223504 -53321501 -53421502 -53521502 -53642914 -53742709 -53842830 -53942888-54057001-54242831-54323511-54423512 -54523513 -54642621 -54842621 -54942509 -55142501 -55242502 -55342503 -55442502 -55542502 -55642504 -55742852 -55856025 -55957002 -56742501 -57125000 -57342890 -57442864 -57738002-57938004 -58042625 -58142804 -58242625 -58342845 -58542732 -58642907 -587428C6 -59042734-60142710 -60254008 -60323515 -60442611 -60742832 -61153088 -61242711 -61354008 -61454008 -61555006 -61642893-61756089-61842832 -61955011 -62053001 -62158001 -62256031 -62355012 -62442889 -62555014 -62655015 -62755016-62842613 -62942834 -63056089 -63154008 -63242915 -63342915 -63442915 -63542915 -63656016 -63742614 -63842601 -63956027 -64056089 -64254021 -64354024 -64442615 -64655017 -64757003 -65056090 -65154025 -65223506 -65357004 -65556036 -65842917 -66053035 -66153036 -66253037 -66353038-66553039 -66657005 -66742917 -66856018 -66942917 -67054010 -67153040 -67255035 -67653041 -67757011 -67853045 -67957006 -68054011 -68123507 -68257010 -68342842 -68454012 -68558002 -68653043 -68753044 -68858002 -68954011 -69023508 -69157018 -69257018 -69355003 -69457023 -69642898-69742899-71342815-71556064-71656065 -71756066 -71856067 -71942710 -72042710 -72142710 -72242704 -7239000 -72454038 -72542721 -72655030 -72856080 -729429B1 -73056053 -73156054 -73256055 -73356056 -73456057 -73555004 -73653014 -73753056-73956088-74051034 -74155030 -74253004 -74657053 -74757054 -74854042 -75042986-75142987-7520A001 -763560A1 -764560A2 -765560A3 -766560A4 -76742626 -768560A50 -76953096 -770530A6 -771428C7 -79742987 -798428C9 -8022201222003 -80323505 -8047002 -80551002 -80723509 -8088001 -81121000 -81222508 -81542920-81725000-8185103-81958004 -82058004 -82251004 -84054004 -8428002 -8438003 -87058026 -87251302 -87353090 -87453901 -87542988 -87653092 -87753093 -87853094 -87953095-9008003 -90158004 -90258005 -90457011 -90557014 -90651005 -90823510 -90957007 -91057007 -91140001 -91357033 -91742969 -91851021 -91956045 -92242505 -92357015 -92458006 -9252D521 -9262D521 -92751006 -92958002 -93951021 -94756038 -94856062 -95042705 -96551021 -98157015 -99157015 -200153089 -20003560A7 -20004560A8 -2000554035 -2000653097 -2007053098 -2007153099 -2007256052 -2007342927 -2007442939 -2010056059 -2010156059 -2010242849 -2010442856 -2010642945 -3000058008 -3000257057 -3002058009 -3002158010 -3003058013 -3004057012 -3004157013 -3005058011 -3005158012 -3005242932 -3005342506-300608004 -300618004 -3007058014 -3007158015 -3007258016 -3007358017 -3007458018 -300808001 -3008158019 -300828001 -3009025000 -3010456095 -3010556096信息对照<!--newcoin-->如果你不懂代码是什么意思,可以用这份资料查找,db2 ? SQLN"错误代码",系统会给出一些提示信息.DB2错误信息(按sqlcode排序)SQL语句成功完成SQL语句成功完成,但是有警告未限定的列名被解释为一个有相互关系的引用动态SQL语句用分号结束没有找到满足SQL语句的行用DATA CAPTURE定义的表的更新操作不能发送到原来的子系统为2型索引设置了SUBPAGES语句要插入的值的个数不等于被插入表的列数指定的表空间被置为检查挂起状态使用非唯一的名字来解决命名的限定列命名的对象未在DB2中定义命名的列不在SQL语句中指定的任何表中存在因为SQL语句引用一个远程对象,不能为该SQL语句执行EXPLAIN命名的PLAN TABLE不存在不正确定义PLAN TABLE,检查命名列的定义SQLDA中的SQLN的值至少应于所描述的列的个数一样大至少有一个被描述的列应该是单值类型,因此扩展的SQLVAR条目需要另外的空间至少应有一个被描述的列是一个LOB,因此扩展的SQLVAR条目需要另外的空间至少应有一个被描述的列应是单值类型,因此扩展的SQLVAR条目需要另外的空间该值不能被分配给宿主变量,因为该值不再数据类型的范围之内不能被翻译的字符串,因此被设置为NULL由于与DB2 2.2版本的子系统连接,所以可能存在字符转换问题使用优化提示来选择访问路径设置了无效的优化提示,原因代码指定了为什么,忽略优化提示未知的位置本地不存在CREAT ALIAS对象在DB2未来发布的版本中将不支持指定的特性,IBM建议你停止使用这些特性值被CAST函数截取由用户定义的函数或存储过程发出的警告命名的存储过程超出了它可能返回的查询结果集的个数限制指定由命名的存储过程返回的查询结果集的个数。
DB2基础

一、db2 基础 基本语法 注释:“--”(两个减号) 字符串连接:“||” 如set msg=’aaaa’||’bbbb’,则msg为’aaaabbbb’ 字符串的引用:‘’(一定用单引号),如果需要输入单引号,输入两个单引号即可。 语句结束:“;” 语法来源:PASCLE
转义字符 如果你想查询字符串中包含‘%’或‘_’ ,就得使用转义字符(Escape Characters)。比如,要想查询book_title中包含字符串’99%’的纪录: SELECT * FROM books WHERE book_title like ‘%99!%%’ escape ‘!’ 后面的escape ‘!’是定一个转义字符‘!’, 指明紧跟着转义字符’!'后的%不再是统配符。
DB2命令参数选项 Db2 list command options 可以查看 -a 显示 SQLCA OFF -c 自动落实 ON -e 显示 SQLCODE/SQLSTATE OFF -f 读取输入文件 OFF -l 将命令记录到历史文件中 OFF -n 除去换行字符 OFF -o 显示输出 ON -p 显示交互式输入提示 ON -r 将输出保存到报告文件 OFF -s 在命令出错时停止执行 OFF -t 设置语句终止字符 OFF -v 回送当前命令 OFF -w 显示 FETCH/SELECT 警告信息 ON -x 不打印列标题 OFF -z 将所有输出保存到输出文件 OFF
这些选项的具体功能及其缺省设置为: .a 显示 SQLCA 的数据,缺省为 OFF。 .c 是否自动落实 SQL 命令,缺省为 ON。 .e {c|s} 显示 SQLCODE 或 SQLSTATE,缺省为 OFF。 .f 文件名将命令的输入从标准输入指定到某一文件,缺省为 OFF。 注:命令“db2 < 文件名”与“db2 -f 文件名”作用相同。 .l 文件名将命令记录到历史文件中,缺省为 OFF。 .n 除去换行字符,缺省为 OFF。 .o 将输出数据及信息送到标准输出,缺省为 ON。 .p 在交互方式下显示命令行处理器的提示信息,缺省为 ON。 .r 将输出保存到指定文件中,缺省为 OFF。 .s 执行批处理文件中或交互方式下的命令出错时即停止执行操作,缺省为 OFF。 .t 设置语句终止字符,缺省为 OFF。 .v 回送当前命令到标准输出,缺省为 OFF。 .w 显示 FETCH 或 SELECT 警告信息,缺省为 ON。 .x 不打印列标题,缺省为 OFF。 .z 文件名将所有输出保存到输出文件,缺省为 OFF。 SQLSTATE含义
DB2错误代码表

sqlcode sqlstate错误信息000 00000SQL语句成功完成01xxx SQL语句成功完成,然则有警告+012 01545未限制的列名被申明为一个有彼此关系的引用+098 01568动态SQL语句用分号停止+100 02000没有找到满足SQL语句的行+110 01561用DATA CAPTURE定义的表的更新操纵不克不及发送到本来的子体系+111 01590为2型索引设置了SUBPAGES语句+117 01525要插入的值的个数不便是被插入表的列数+162 01514指定的表空间被置为搜检挂起状况+203 01552应用非独一的名字来解决定名的限制列+204 01532定名的对象未在DB2中定义+206 01533定名的列不在SQL语句中指定的任何表中存在+218 01537因为SQL语句引用一个长途对象,不克不及为该SQL语句履行EXPLAIN+219 01532定名的PLAN TABLE不存在+220 01546不正断定义PLAN TABLE,搜检定名列的定义+236 01005SQLDA中的SQLN的值至少应于所描述的列的个数一样大+237 01594至少有一个被描述的列应当是单值类型,是以扩大的SQLVAR条目须要别的的+238 01005至少应有一个被描述的列是一个LOB,是以扩大的SQLVAR条目须要别的的空+239 01005至少应有一个被描述的列应是单值类型,是以扩大的SQLVAR条目须要别的的+304 01515该值不克不及被分派给宿主变量,因为该值不再数据类型的局限之内+331 01520不克不及被翻译的字符串,是以被设置为NULL+339 01569因为与DB2 2.2版本的子体系连接,所以可能存在字符转换题目+394 01629应用优化提示来选择接见路径+395 01628设置了无效的优化提示,原因代码指定了为什么,忽视优化提示+402 01521未知的地位+403 01522本地不存在CREAT ALIAS对象+434 01608在DB2将来公布的版本中将不支撑指定的特点,IBM建议你停止应用这些特点+445 01004值被CAST函数截取+462 01Hxx由用户定义的函数或存储过程发出的警告+464 01609定名的存储过程超出了它可能返回的查询成果集的个数限制+466 01610指定由定名的存储过程返回的查询成果集的个数。
DB2数据库SQL编码

Db2数据库SQL编码摘要本文主要是关于用SR做报表,编写SQL代码的心得,文章从select语句的执行顺序,临时表,自定义函数,索引,存储过程这几个方面的使用,来讨论如何优化SQL代码,加快速查询速度,增强代码的可读性。
其中select语句的执行顺序和索引主要是为了加快SQL的查询速度。
自定义函数,临时表,存储过程的使用是为了处理逻辑复杂的sql代码,让代码的可读性加强。
关键字:SQL 查询速度可读性/envelope/archive/2010/3/18.html1 SQL 执行顺序根据SQL的执行顺序和表数据具体情况,在多表边接之前删除多余的数据,加快查询速度。
详解如下:从sql的执行方式的来优化SQL代码的执行速度。
首先,看看where ,group by ,order by 等的执行顺序。
Sql语句的执行顺序其实是如下的:Select A.id, COUNT(B.字段)AS num 6FROM table1 AS A 1LEFT OUTER JOIN table2 AS B 2ON A.id = A.id 3WHERE A.字段 = 条件 4GROUP BY A.字段 5HAVING COUNT(B.字段) < 3 7ORDER BY num 8首先,on 和where 两者的区别:上面的一段SQL是按标号的顺序执行的,SELECT的执行顺序是放在最后的,而FROM则是第一步,并且是两个表先做外连接,然后通过ON滤掉不符合条件的结果。
注意,这里写在on后面的过滤条件和where后面的过滤条件的是不同的,主要是根据连接的类型而定(例如:FROM TableA LEFT JOIN TableB ON TableA.DATE <> '1981-01-01'当做完LEFT连接后不符合条件的TableA表中的记录是会添加进来的,因为这里使用的是LFET JOIN)。
db2sql语句

1 限制结果表大小Select * from tabname fetch first 5 rows only;2 cast用法Select * from tabnameA where coln = cast( ‘TR01’ as tabnameB)CAST(salary AS DOUBLE) 类型转换3 连接内连接selet a.col,b.col from tab a,tab b where a.t1=b.t1;外连接:左连接:select a.col,b.col from tab a left join tab b on a.t1=b.t1 (left outer join)右连接:4 输出排序Order by col DESC 降序排列缺省为升序5 限制输出结果,与order共用Select * from tabA order by col desc fetch first 5 rows only6 substr函数Substr(col,1,2); col为char或varchar型7 列函数可以参照数据库中FUNCTIONS中的说明用Quest Centeral查看,以下是常用的Max 、avg、count…DB2中的VARCHAR转换为INTEGER的函数为CAST()DB2中的INTEGER转换为VARCHAR的函数为CHAR()DB2中的VARCHAR转换为DATE的函数为DATE()DB2中的DATE转换为VARCHAR的函数为CHAR() char(col,iso) 输出yyyy-mm-ddYEAR() 返回date数值的年部分Month()返回date数值的月部分HOUR() 返回一个数值的小时部分SELECT HOUR('18:34:23')FROMSECOND() 返回一个数值的秒部分RTRIM()删除字符串尾部的空格Ltrim()删除字符串左边的空格Replace(col,exp1,exp2)替换col中exp1为exp2MOD(EXP1,EXP2) 返回EXP1除以EXP2的余数DOUBLE()如果参数是一个数字表达式,返回与其相对应的浮点数,如果参数是字符串表达式,则返回该数的字符串表达式.FLOA T() 返回一个数的浮点表示FLOOR() 返回小于或等于参数的最大整数8 group by分组Select a, sum(fse) from tab group by a having sum(fse)>1000 Having过滤条件9 取消重复值distinctSelect distinct col from tab10 字符串匹配like11 范围查找between and12 否定条件查找not like13 空值查询col is null14 查找一组值col in (1,2);15 子查询Select * from tabA where col1 in (select col from tabB); Select * from tabA where col1 not in (select col from tabB);16 case 表达式Select caseWhen score < 65 then ‘not passed’When score<=90 then ‘passed’Else ‘excellent’EndFrom tabA18 基础-多表的关联更新方法db2的update语法不支持“update table1 set t1.col1=t2.value1 from table1 t1,table2 t2 where …”的写法,但是可以通过如下方法解决:update table1 t1 set t1.col1=(select t2.col1 from table2 t2 where …)例:update test t1 set (ername,t1.instcode) = (selectt2.instcode,t2.instname from sysinsttb t2 wheret2.instcode=t1.instcode);19 集合运算符union intersect except并:union select col from tabA union select col from tabB交: intersect select col from tabA intersect select col from tabB差:except select col from tabA except select col from tabB20 insert …selectInsert into tabA select col1, col2 from tabB选择的列与插入的列数目、类型一致.21 DB2如何得到错误代码的说明?DB2 ?SQLCODE例:db2 ? sql080322 在命令行创建存储过程Db2 –td@ -vf sp.sqlSp.sql为脚本注意,一个可能的脚本如下:Sp.sql#注释Drop PROCEDURE db2inst1.spname@Create PROCEDURE db2inst1.spname(in cs1 char(1), in cs2 int, out outcode int)Language sqlBegindeclare SQLCODE int default 0;end@注意在客户端工具中不能加@实例名字也应该注意。
DB2不允许访问表空间解决

DB2不允许访问表空间解决1. DB2进行异常操作后,如命令未执行完将其中断,或对DB2表进行load/restore操作后,DB2将只能select,不能update,altet,insert,报错如下:DB2 SQL Error: SQLCODE=-290, SQLSTATE=55039, SQLERRMC=null,DRIVER=3.50.152消息:不允许访问表空间。
. SQLCODE=-290, SQLSTATE=55039, DRIVER=3.50.1522. 可查看DB2的表空间状态,确认状态后进行相应的处理解决$ db2 "list tablespace show detail"Tablespaces for Current DatabaseTablespace ID = 0Name = SYSCATSPACEType = System managed spaceContents = Any dataState = 0x0000Detailed explanation:NormalTotal pages = 2519Useable pages = 2519Used pages = 2519Free pages = Not applicableHigh water mark (pages) = Not applicablePage size (bytes) = 4096Extent size (pages) = 32Prefetch size (pages) = 32Number of containers = 1Tablespace ID = 1Name = TEMPSPACE1Type = System managed spaceContents = System Temporary dataState = 0x0000Detailed explanation:NormalTotal pages = 1Useable pages = 1Used pages = 1Free pages = Not applicableHigh water mark (pages) = Not applicablePage size (bytes) = 4096Extent size (pages) = 32Prefetch size (pages) = 32Number of containers = 1Tablespace ID = 2Name = USERSPACE1Type = System managed spaceContents = Any dataState = 0x0004 这个代码意义就是“停顿的独占”,正常状态为0x0000,非0就是有问题,都可以用下面方法解决。
reorg报错sqlcode-291的解决方法

reorg报错sqlcode-291的解决方法如何解决SQLCODE291 错误SQLCODE291是一种主要用于IBM DB2 数据库的错误代码,表示一个表或者视图的重新组织操作失败。
当数据库管理员或者开发人员试图对表或者视图执行重新组织操作,但出现问题时,就会产生该错误代码。
本文将一步一步解释如何解决SQLCODE291 错误,帮助您快速定位和解决问题。
1. 确认错误的来源首先,您需要确定哪个表或者视图导致了SQLCODE291 错误。
通常,数据库系统会为每个错误提供一条具体的错误消息,其中包含了导致错误的对象的名称。
您可以通过检查错误消息来确定具体的对象,例如:REORG TABLE schema_name.table_nameREORG INDEXES ALL FOR TABLE schema_name.table_name2. 检查表或者视图的状态在执行重新组织操作之前,您需要确保目标表或者视图处于正确的状态。
有时,表或者视图可能已被标记为不可用或者正在进行其他操作。
您可以通过执行以下查询来检查目标表或者视图的状态:SELECT TABNAME, STATUS FROM SYSCAT.TABLESWHERE TABSCHEMA = 'schema_name' AND TABNAME ='table_name'确保STATUS 列返回正常值,如"N" 表示正常,"R" 表示表被重整,"C" 表示表正在进行复制等。
如果表或者视图处于不正确的状态,您可能需要等待其他操作完成,或者手动重置它们的状态。
3. 检查重新组织操作的权限执行重新组织操作需要相应的权限。
确保您具有足够的权限来执行重新组织操作。
通常,有一下几种权限:- SYSADM 或SYSCTRL 角色。
- DBADM 或DBCTRL 角色。
- 对表空间的REORG 权限。
DB2911错误的解释

DB2911错误的解释SQL0911N 因为死锁或超时,所以当前事务已回滚。
原因码为 "<原因码>"。
说明:
当前⼯作单元参与了未解决的对象争⽤,因此必须回滚。
原因码如下所⽰:
2 由于死锁⽽导致事务已回滚。
68 由于锁定超时⽽导致事务已回滚。
72 因为存在与事务中所涉及的 DB2 Data Links Manager 有关的错误,所
以事务已回滚。
注: 必须再次输⼊与⼯作单元相关的更改。
应⽤程序已回滚⾄上⼀次 COMMIT。
⽤户响应:
为了帮助避免死锁或锁定超时,对长时间运⾏的应⽤程序或有可能遇到死锁的应
⽤程序频繁发出 COMMIT 操作(如果有可能)。
联合系统⽤户:联合服务器或数据源处可能会发⽣死锁。
没有检测跨越数据源并
潜在地跨越联合系统的死锁的机制。
有可能标识使请求失败的数据源(请参阅
Problem Determination Guide 以确定哪⼀个数据源使 SQL 语句的处理失败)。
当处理 SQL 语句的某些组合时,通常会发⽣死锁或者预期会发⽣死锁。
建议您设
计应⽤程序来尽可能避免死锁。
有关防⽌发⽣死锁或锁定超时的更详细信息,请使⽤诸如"防⽌死锁"之类的短语
和诸如"死锁"和"锁定超时"之类的术语在 DB2 信息中⼼(http://
/infocenter/db2luw/v9)中进⾏搜索。
sqlcode: -911
sqlstate: 40001。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
42604 42601 42604 42622 42601 42601 42606 42901 42607 42602 42961 42601 42802 42902 42803 42903 42701 42803 42601 42805
42829 42905 42601 54004 22019
无效的ESCAPE模式 LIKE谓词只能用于字符数据 LIKE语句、ESCAPE语句、LOCATE函数或POSSTR函数中有无效运算对象 无效相关子查询引用 大于255字节的列被不正确使用 排序关键字的长度大于4000字节 被连接的字符串太大;字符的最大值为32767;图形的最大值为16382 SUBSTR列函数的第二个或第三个操作符无效 不支持的SQL语句。该语句可能在另外的RDBMS上有效,也有可能在其他的上下 文中有效(例如,VALUES只能在触发器中出现) 指定的段号无效 某一源函数不能更改。要改变源函数,必须删除该源函数并重新建立他 RENAME和ALTER无法执行。RENAME不能对视图或者活动RI.ST表重新命名。ALTER 不能用于改变列的长度,因为该列参与了RI、一个用户退出程序、全局的临时 表或打开DATACAPTURE CHANGES表的列 触发活动的INSERT,UPDATE或DELETE语句中指定了无效的视图更新或一个无效
-101
54001
-102
54002
的结果集定位器的个数 因为倒台SQL的成本估算超出了在ELST中指定的警告阀值,所以发出警告 请求一个主健的定位更新,或请求一个使用自我引出约束的表的删除操作 命名外健是一个重复的引用约束 命名的授权ID缺少在命名的DB2对象上执行命名操作的权限 命名的授权ID缺少执行命名操作的权限 已经被授权该PUBLIC,因此WITH GRANT OPTION不可用 对ALTER REFERENCES INDEX 和TRIGGER特权,PUBLIC AT ALL LOCATION无效 因为GRANTEE已经拥有这些特权,所以一个或更多的特权被忽略 模式名指定了不止一次 没有为长字符数据类型(BLOB,CLOB和DBCLOB)建立比较函数 由于建立了一个指定为DEFER YES的索引,指定的对象处于PENDING状态,或者 因为使用了ALTER INDEX改变关键值的范围,所以指定的对象处于PENDING状态 因为删除了主健索引,所以表定义被标注为不完整 删除了加强UNIQUE约束的索引,唯一性不在被加强 因为建立的索引中没有包含NULL,所以WHERE NOT NULL被忽略 不能更改或者建立已命名的表为从属表 在已指定的分区表空间中尚没有建立指定的分区索引,所以分区索引不可得 为CREATE或ALTER STOGROUP语句指定特定或者非特定的卷ID,在DB2较新发布 的版本中(版本6以后)将不再支持他们 当建立目录索引时,不能指定SUBPAGES语句,SUBPAGES将被忽略,并缺省为1 分区索引的限制关键字超出了最大值 已命名的对象的更改可能像只读系统中对象的改变要求一样 SET语句中引用的特定寄存器不存在,将忽略 SET请求 数据溢出或者因除法异常而引起的数据异常错误 ISOLATION(RR)与LOCKSIZE PAGE 冲突 由于十进制乘法导致溢出 连接成功,但是只支持SBCS SUBPAGES不等于1的1型索引不能成为数据共享环境中的缓冲池组依赖者 因为指定的缓冲池不允许超高速缓存,GNPCACHE指定被忽略 因为DB2子系统的参数禁用“提示(hiats)”所以不能指定优化提示 分布式协议错误被检测到,提供原来的SQLCODE和SQLSTATE SQL语句中由非法字符 字符串常量非正常终止;检查到有遗漏的引号标志 需要INTO语句 某特定数据类型的长度或者标量规范无效 不能执行SQL语句,因为该语句对动态SQL无效或者对OS/390的DB2无效 在单位类型、用户自定义的函数以及过程中不能使用带有CAST的LONG VARCHAR 或LONGVARGRAPHIC SQL语句超出了已确定的DB2限制:例如,表的数目太多,语句中的字节太多 字符串常量太长
-151
-152 -153
-154 -156
-157 -158 -159 -160 -161 -164 -170 -171 -173 -180 -181 -182 -183 -184 -185 -186 -187 -188 -189 -190 -191 -197 -198 -199 -203 -204 -205 -206 -208 -212 -214 -219 -220
sqlstate 00000
01545 01568 02000 01561 01590 01525 01514 01552 01532 01533 01537 01532 01546 01005 01594
01005
01005
01515 01520 01569 01629 01628 01521 01522 01608 01004 01Hxx 01609 01610 01614
的转换表 试图更新一个不可更新的视图的列、一个DB2 CATALOG表的列或者一个ROWID 列 DROP CHECK试图删除一个参照约束,或者DROP FOREIGN试图删除一个检查约束 无效的视图建立请求,必须为旋转列表中列出的列出的未命名的列或者重复的 列提供一个名字 不能用UNION、UNION ALL或者一个远程表建立视图 在视图上建立索引是非法的,或者在ALTER TABLE,CREATE TRIGGER,DROP TABLE 或LOCK TABLE语句上指定一个不是表的其他对象这是无效的 必须在FOREIGN KEY语句中指定一个表名 视图的列和选择列表中的列不相匹配 无效DROP或COMMENT ON语句 对该视图的WITH CHECK OPTION无效 正被更新的视图WITH CHECK OPTION语句使得这行不能被插入或更新 用户没有建立这个视图的权限 标量函数指定了无效的参数个数 标量函数指定了无效的数据类型长度或者无效数值 在非只读型的游标上不能指定隔离级别UR DATE、TIME、TIMESTAMP值的字符串表示法的语法不对 不是有效的DATE、TIME、TIMESTAMP值 在算术表达式中的日期/时间值无效 在算术表达式中返回的日期/时间值的结果不在有效值的范围内 没有正确使用日期/时间值的参数标记 没有定义本定的日期/时间出口 改变本定的日期/时间出口引发这个程序的长度无效 MVS返回无效的当前日期/时间 字符串表示无效 指定的编码字符集的ID无效或没有定义 不能象所设定的那样改变(ALTER)列。只能改变(ALTER)VARCHAR列的长度 字符串中包含了无效的混合数据 当两个或多个表被联合在一起排序时,限定的列名不能在ORDER BY语句中使用 试图对空的字符串发布一个PREPARE或EXECUTE IMMEDIATE语句 SQL语句中使用了非法关键词 模糊列引用 没有定义的对象名 指定的表的列名无效 列名没有在FROM语句所引用的任何表中,或者没有在定义触发器所在的表中 不能ORDER BY指定列,应为该列不在选择列表中 指定的表名在触发器中不允许多次使用,只能使用一次 DISTINCT、ORDER BY 引起的无效表达式 因为PLAN_TABLE不存在,EXPLAIN无法执行 遇到无效的PLAN_TABLE列
42818 42824 42906 42907 54005 54006 22011 42612
58003 42809 42809
-150
42807
无效数学文字 SQL语句中遇到非法符号 无效的字符串格式;通常引用一个格式不正确的图形字符串 对象名太长 RENAME语句中指定的名字有错误,不能使用限定词 指定了无效语句;例如CREATE VIEW不能包含ORDER BY 语句 遇到了无效的十六进制的文字 指定的列函数没有给出列名 无效的列函数语法;列函数不能运行与其他的列函数之上 遇到无效字符 该语句的位置名称必须与当前服务器匹配,但是却没有匹配 因为比较运算符没有伴着一个表达式或者列表,遇到了无效谓词 待插入的数值的个数于被插入的行中的列数不相等 数据修改语句(UPDATE或DELETE)和FROM语句中的表和视图命名不合法 HAVING语句中的列的列表与GROUP BY语句中的列列表不匹配 不允许WHERE语句、SET语句、VALUES语句或者SET ASSIGNMENT语句引用列函数 在INSERT或UPDATE语句中,某一列被非法引用了两次 非法使用了列函数。因为没有用于一个列函数的所有列不再GROUP BY语句中 特定位置的参数必须是一个常数或者一个关键词 ORDER BY语句中指定了无效数字,该数字要么小于1要么大于选定的列 数 不能为一个UPDATE语句指定ORDER BY语句 在子选择中DISTINCT只能指定一次 SQL谓词中NULL使用不当 SQL语句中包含的表多于15个 ESCAPE语句必须为一个字符
42808
42809 42908
42909 42809
42810 42811 42089 42813 44000 42502 42605 42815 42801 22007 22001 42816 22008 42610 57008 22505 22506 22503 22522 42837 22504 42877 42617 42601 42702 42704 42703 42703 42707 42712 42822 42704 55002
-103 -104 -105 -107 -108 -109 -110 -111 -112 -113 -114 -115 -117 -118 -119 -120 -121 -122 -123 -125
-126 -127 -128 -129 -130 22025 -131 -132 -133 -134 -136 -137 -138 -142
说明 SQL语句成功完成 SQL语句成功完成,但是有警告 未限定的列名被解释为一个有相互关系的引用 动态SQL语句用分号结束 没有找到满足SQL语句的行 用DATA CAPTURE定义的表的更新操作不能发送到原来的子系统 为2型索引设置了SUBPAGES语句 要插入的值的个数不等于被插入表的列数 指定的表空间被置为检查挂起状态 使用非唯一的名字来解决命名的限定列 命名的对象未在DB2中定义 命名的列不在SQL语句中指定的任何表中存在 因为SQL语句引用一个远程对象,不能为该SQL语句执行EXPLAIN 命名的PLAN TABLE不存在 不正确定义PLAN TABLE,检查命名列的定义 SQLDA中的SQLN的值至少应于所描述的列的个数一样大 至少有一个被描述的列应该是单值类型,因此扩展的SQLVAR条目需要另外 的空间 至少应有一个被描述的列是一个LOB,因此扩展的SQLVAR条目需要另外的 空间 至少应有一个被描述的列应是单值类型,因此扩展的SQLVAR条目需要另外 的空间 该值不能被分配给宿主变量,因为该值不再数据类型的范围之内 不能被翻译的字符串,因此被设置为NULL 由于与DB2 2.2版本的子系统连接,所以可能存在字符转换问题 使用优化提示来选择访问路径 设置了无效的优化提示,原因代码指定了为什么,忽略优化提示 未知的位置 本地不存在CREAT ALIAS对象 在DB2未来发布的版本中将不支持指定的特性,IBM建议你停止使用这些特性 值被CAST函数截取 由用户定义的函数或存储过程发出的警告 命名的存储过程超出了它可能返回的查询结果集的个数限制 指定由命名的存储过程返回的查询结果集的个数。成功完成 由存储过程返回的结果集的个数超过了由ASSOCIATE LOCATORS语句指定