DB2错误代码对照表
DB2-sqlcode

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限制:例如,表的数目太多,语句中的字节太多 字符串常量太长
数据库db2错误代码大全

数据库db2错误代码⼤全sqlcode sqlstate 说明000 00000 SQL语句成功完成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 01005 SQLDA中的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错误代码表

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故障总结

1.还原数据库之后,客户端无法和服务器主机连接,SQL30081N 检测到通信错误。
正在使用的通信协议:"TCP/IP"。
正在使用的通信API:"SOCKETS"。
检测到错误的位置:"192.168.247.120"。
检测到错误的通信功能:"connect"。
特定于协议的错误代码:"10061"、"*" 和 "*"。
SQLSTATE=08001a.最可能是数据库没启动。
b.可能还原之后端口设置缺失的原因。
肯定和db2 dbm的svcename服务有关。
>>db2 get dbm cfg|grep SVCENAMETCP/IP Service name (SVCENAME) =SSL service name (SSL_SVCENAME)=这里TCP/IP端口设置时缺失了。
需要手动设置。
>>db2set DB2COMM=TCP/IP,NETBIOS设置通信方式>>db2set>>db2 update dbm cfg for tsbdw using svcename 50000DB20000I The UPDATE DATABASE MANAGER CONFIGURATION command completed successfully更新通信端口>>db2stop>>db2start>>db2 get dbm cfg |grep SVCENAMETCP/IP Service name (SVCENAME) = 50000SSL service name (SSL_SVCENAME) =重连数据库即可成功2.在忘记关闭数据库的情况下重启的服务器会导致实例挂起,数据库起不起来无法执行DB2的各种命令报错SQL6036N START or STOP DATABASE MANAGER command is already in progress.Kill alldb2_kill + ipclean to recycle the instancenote:kill db2 process force。
DB2错误码及信息

DB2错误码及信息•0This is a successful run.•-60The length or scale is not valid.•-84The SQL statement cannot be executed.•-102The literal string is too long. The maximum allowable size is size. The string begins with string.•-104token is an incorrect token.•-107The name, name is too long. The maximum allowable size is size.•-109clause clause is not permitted.•-112The operand of a column function is another column function.•-113There is an incorrect character in: string, reason code nnn.The number of insert columns must match the number of insert values.•-119A column that was identified in a HAVING clause must beincluded in the GROUP BY clause.•-120A WHERE clause or SET clause includes an aggregate columnfunction.•-121An INSERT or UPDATE statement references a column for update multiple times.•-122The SELECT statement with a no GROUP BY clause contains a column name and a column function in the SELECT clause, ora column name is contained in the select clause, but not inthe GROUP BY clause.•-125An integer in the ORDER BY clause must identify a column of the result.The SELECT statement contains both an ORDER BY clause and an UPDATE clause.•-127The DISTINCT qualifier is specified more than once in a subselect.•-129There are too many tables referenced in a single query.•-134There is an improper use of the LONG STRING COLUMN or a host variable of a MAXIMUM LENGTH greater than 254. •-138The SUBSTRING argument is not valid.•-150An INSERT, UPDATE, or DELETE statement was issued on a view.•-151An UPDATE was issued on a non-updateable column.•-153A CREATE VIEW statement must have a column-name list. •-156The target of a MAP INDEX statement must be a table.The column list for view is not valid.•-170The number of arguments is not valid.•-171The function argument is not valid.•-181The string representation of a DATETIME value is not valid.•-182An arithmetic expression with a DATETIME value is not valid.•-183An arithmetic operation on a DATE or TIMESTAMP value produced a value that is out of the range of the valid dates.•-185The LOCAL date and time format is not supported.•-199The keyword, keyword is not valid.•-203A reference to a column name is ambiguous.•-204The name is an undefined name.The column, column-name is not a column in the table, table-name.•-206The column-name must be a column in an inserted table, updated table, or any table that is identified in a FROM clause.•-208A column that is not valid is included in the ORDER BYclause.•-300The host variable is not null terminated.•-301The input-host variable type is not valid.•-302The host variable is not valid or too large for the target column.•-303The output-host variable type is not valid.•-304Conversion of SQL data type would result in truncated value.An output-indicator variable was not given.•-312CREATE VIEW statement contains parameter markers or host variables.•-313The number of host variables is incorrect.•-338The ON clause for a table join is not valid.•-401The operands of an arithmetic or comparison operation are not comparable.•-402An expression in a select list contains operands that are not compatible.•-405The numeric literal is out of range.•-407An UPDATE or INSERT value is NULL, and the target column is defined as NOT NULL.An UPDATE or INSERT value is not compatible with the data type of the target column.•-412The SELECT CLAUSE of a subquery specifies multiple columns.•-415The corresponding columns in each table of a UNION do not have the compatible data types.•-416There is an operand of a UNION that contains a long SQL column.•-419The decimal-divide operation is not valid.•-420There is an incorrect decimal string.•-421The operands of a UNION do not have the same number of result columns.•-444The stored procedure failed to load.The stored procedure definition includes one or more OUTPUT parameters for which no host variable was passed. •-501The cursor that is identified in a FETCH or CLOSE statement is not open.•-502The cursor that is identified in an OPEN statement is already open.•-504The cursor name is not defined.•-514The cursor is not in a prepared state.•-516The DESCRIBE statement does not identify a PREPARED statement.•-517The statement that is named in the declaration for the cursor must be a SELECT statement.•-518The statement is not prepared.The PREPARE statement identifies the SELECT statement of the opened cursor.•-530The foreign key was incorrect. The insert positioning failed on a multi-record mapped table.•-537The primary key clause identifies the column, column-name more than once.•-542The column-name cannot be a column of a primary key because it can contain null values.•-551Privileges are necessary to run the SQL statement.•-601The name of the object to be created cannot be identical to the existing name.•-602The CREATE INDEX statement specifies too many columns (number is the maximum).A data type definition specifies an incorrect length, precision,or scale attribute for column-name.•-607An INSERT, UPDATE, or DELETE statement was issued on a non-updateable table.•-612A duplicate column name is specified.•-637Duplicate keyword. keyword.•-638The table, table, cannot be created because a column definition is missing.•-644An incorrect value, value, is specified for the keyword or clause, keyword-or-clause in the statement, stmt-type.•-681An error occurred while a column in a field procedure was being encoded or decoded.•-682The program cannot load the field procedure.The SQL statement caused a data exception error.•-803Duplicate keys were detected on table table-name.•-804The input SQLDA is incorrect.•-811The results of a subselect produced more than one row. •-817An update is prohibited. A two-phase-commit situation or a catalog update statement (DDL) was issued while another connector transaction was incomplete.•-870The number of host variables is incorrect.•-904An unavailable resource prevented the SQL statement from running.•-922Authorization for the connection failed.•-4901The cursor limit was exceeded.The memory limit was exceeded.•-4903The SQL statement is unsupported.•-4904The SQL function or expression is not supported.•-4905An internal processing error occurred.•-4906The conversion is not valid.•-4907An internal catalog error occurred while reading or updating the system catalog.•-4908The mapped data is not valid.•-4909A DDLEX mapping error occurred.•-4910An error occurred during a connector update that required a backout of the current transaction.•-4911The statement processing was cancelled.。
db2报错Operationnotallowedforreason

db2报错Operationnotallowedforreason1.表操作错误SQL0668N Operation not allowed for reason code "1" on table "XXXX". SQLSTATE=57016的解决⽅法The table is in Check Pending state. The integrity of the table is not enforced and the content of the table may be invalid.An operation on a parent table or an underlying table that is not in a check pending state may also receive this error if a dependent table is in a check pending state.Execute the SET INTEGRITY statement with the IMMEDIATE CHECKED option on table table-name to bring the table out of the Check Pending state.For a user maintained materialized query table, execute the statement with the IMMEDIATE UNCHECKED option instead of the IMMEDIATE CHECKED option.:ERROR [57016] [IBM][DB2/AIX64] SQL0668N Operation not allowed for reason code "1" on table "XXXX". SQLSTATE=57016可能有⼀⾏或多⾏违反了对数据定义的约束。
【数据库】:关于DB2数据库错误提示说明

【数据库】:关于DB2数据库错误提⽰说明SQLSTATE 消息本节列⽰ SQLSTATE 及其含义。
SQLSTATE 是按类代码进⾏分组的;对于⼦代码,请参阅相应的表。
表 2. SQLSTATE 类代码类代码含义要获得⼦代码,参阅...00 完全成功完成表 301 警告表 402 ⽆数据表 507 动态 SQL 错误表 608 连接异常表 709 触发操作异常表 80A 功能部件不受⽀持表 90D ⽬标类型规范⽆效表 100F ⽆效标记表 110K RESIGNAL 语句⽆效表 1220 找不到 CASE 语句的条件表 1321 基数违例表 1422 数据异常表 1523 约束违例表 1624 ⽆效游标状态表 1725 ⽆效事务状态表 1826 ⽆效 SQL 语句标识表 1928 ⽆效权限规范表 212D ⽆效事务终⽌表 222E ⽆效连接名表 2334 ⽆效游标名表 2436 游标灵敏度异常表 2538 外部函数异常表 2639 外部函数调⽤异常表 273B SAVEPOINT ⽆效表 2840 事务回滚表 2942 语法错误或存取规则违例表 3044 WITH CHECK OPTION 违例表 3146 Java DDL 表 3251 ⽆效应⽤程序状态表 3353 ⽆效操作数或不⼀致的规范表 3454 超出 SQL 限制,或超出产品限制表 3555 对象不处于先决条件状态表 3656 其它 SQL 或产品错误表 3757 资源不可⽤或操作员⼲预表 3858 系统错误表 39类代码 00 完全成功完成表 3. 类代码 00:完全成功完成SQLSTATE 值含义00000 操作执⾏成功,并且未产⽣任何类型的警告或异常情况。
类代码 01 警告表 4. 类代码 01:警告SQLSTATE 值含义01002 发⽣ DISCONNECT 错误。
01003 从列函数的⾃变量消去 NULL 值。
01004 字符串值在指定给具有较短长度的另⼀字符串数据类型时被截断。
db2连接报错connect。ERRORCODE=-4499,SQLSTATE=08001(转载)

db2连接报错connect。
ERRORCODE=-4499,SQLSTATE=08001(转载)在使⽤data studio连接远程DB2数据库时报错如下:[jcc][Thread:main][SQLException@5b775b77] java.sql.SQLException[jcc][Thread:main][SQLException@5b775b77] SQL state = 08001[jcc][Thread:main][SQLException@5b775b77] Error code = -4499[jcc][Thread:main][SQLException@5b775b77] Message = [jcc][t4][2043][11550][4.13.111] 异常 .ConnectException:打开端⼝50,000 上服务器 192.168.1.107/192.168.1.107 的套接字时出错,消息为:Connection timed out: connect。
ERRORCODE=-4499, SQLSTATE=08001[jcc][Thread:main][SQLException@5b775b77] Stack trace followscom.ibm.db2.jcc.am.DisconnectNonTransientConnectionException: [jcc][t4][2043][11550][4.13.111] 异常 .ConnectException:打开端⼝ 50,000 上服务器 192.168.1.107/192.168.1.107 的套接字时出错,消息为:Connection timed out: connect。
ERRORCODE=-4499, SQLSTATE=08001com.ibm.db2.jcc.am.id.a(id.java:320)Cause:Error 1: DB2 return code is -4499Four problems might be the cause of this error.1、Firewall is not stopped2、DB2 is stopped.3、The wrong DB2 database listening port number is specified.4、The wrong database name is specified.solution:1、Check whether firewall is stopped.chkconfig iptables off 永久性关闭service iptables stop 重启主机后失效2、Check whether DB2 is started.db2 list db directory3、Check the DB2 listening portdb2 get dbm cfg |grep SVCENAME,查看TCP/IP服务名称和/etc/services中定义的db2服务名称是否匹配4、Check the DB2COMMdb2set -all 检查DB2COMM是否是TCPIP。
关于DB2数据库问题故障分析

----创建用户临时表空间
db2 "create USER temporary tablespace ORCLSP_USER_TMP pagesize 8k managed by system using ('/home/db2inst1/temp')"
----创建BUFFER
db2 "create bufferpool ker pagesize 8k '/home/db2inst1/' "
DB20000I The SQL command completed successfully.
-----创建系统临时表空间并指定BUFFER
db2 "create system temporary tablespace temp pagesize 8k bufferpool zy"
------断点恢复
1、首先备份sample1数据库,查看归档日志的路径,看看最后归档的时间。(一般最后最后归档的时间的那个是坏的,前一个因该可以用例2011-06-08-01.21.25.000000。)
2、将sample1数据库的活动日志文件拷贝到一个新的目录下(例/home/db2inst1/archivelogs/db2inst1/ORCL)。
[db2inst1@localhost $]$ db2move orcl import -u db2inst1 -p db2inst1 >db2moveout.log
说明:实施数据迁移的前提是1、某个非关键业务的表发生错误,导致数据库不能正常操作。
2、凭个人经验"-901"一般是除坏表外其它表数据能导出来,可实现迁移。而"-1224",数据库损坏严重,一般导到坏表时,数据库就自动断开连接了,其它表基本上导不出来,不能进行迁移。
DB2 备份常见错误代码及含义

DB2 常见错误代码DB2 的错误信息分为4类:1: DB2错误信息: --> SQL<XXXX>N例如: SQL2062N该类错误信息可以通过DB2 命令查看详细描述:$db2 ? <SQLXXXXN>2: Error Code: →-XXX可以参考附件DB2_Code.PDF 查找.3: SQL STATE Code: →SQLSTATE: XXXXX该类错误信息一般会和Error Code 一同出现. 可在附件DB2_Code.PDF 查找错误描述. 4: Reason Code. →Reason code: "xxxx".出现该类通常是第三方API 或操作系统返回的错误信息. 可从系统层面查找原因.例如:在AIX 可以在如下文件找到该错误的描述:/usr/include/sys/ errno.h例如常见Reason Code#endif /* _ALL_SOURCE */#define EPERM 1 /* Operation not permitted */#define ENOENT 2 /* No such file or directory */#define ESRCH 3 /* No such process */#define EINTR 4 /* interrupted system call */#define EIO 5 /* I/O error */#define ENXIO 6 /* No such device or address */#define E2BIG 7 /* Arg list too long */#define ENOEXEC 8 /* Exec format error */#define EBADF 9 /* Bad file descriptor */#define ECHILD 10 /* No child processes */#define EAGAIN 11 /* Resource temporarily unavailable */#define ENOMEM 12 /* Not enough space */#define EACCES 13 /* Permission denied */#define EFAULT 14 /* Bad address */#define ENOTBLK 15 /* Block device required */#define EBUSY 16 /* Resource busy */#define EEXIST 17 /* File exists */#define EXDEV 18 /* Improper link */#define ENODEV 19 /* No such device */#define ENOTDIR 20 /* Not a directory */******************************************************************************* CV备份中常见的一些错误信息:1:SQL2426N The database has not been configured to allow the incremental backup operation. Reason code = "1".Reason Code= “1”从/usr/include/sys/ errno.h 查找Reason Code=”1” 的描述#define EPERM 1 /* Operation not permitted (操作不被允许)原因分析:此时1 代表某些操作不被允许., 配合SQL2426N 可以知道是因为没有更新TRACKMOD 参数为ON. 所以增量备份不备允许.2:SQL2062N An error occurred while accessing media"/opt/simpana/Base64/libDb2Sbt.so". Reason code: "11".Reason Code= "11"从/usr/include/sys/ errno.h 查找Reason Code=”11” 的描述#define EAGAIN 11 /* Resource temporarily unavailable (无法分配资源)原因分析:1: CommCell里面的DB2 子客户端没有关联相应的存储策略。
DB2 SQLSTATE 消息异常

42849 外部例程不支持所指定的选项。
42852 在 GRANT 或 REVOKE 中指定的特权无效或不一致。(例如,视图上的 GRANT ALTER。)
42853 指定了选项的两个备用项,或者同一选项被指定了多次。
42854 选择列表中的结果列数据类型与在带类型视图或具体化查询表定义中定义的类型不兼容。
42506 发生所有者授权失败。
42508 不能将指定的数据库特权授予 PUBLIC。
42509 因为 STATICRULES 选项而未授权 SQL 语句。
42511 未能检索 DATALINK 值。
42512 授权标识对受保护列没有访问权。
42514 授权标识不具有对象的所有权需要的特权。
42702 由于名称重复,列引用有歧义。
42703 检测到一个未定义的列、属性或参数名。
42704 检测到未定义的对象或约束名。
42705 检测到未定义的服务器名。
42707 ORDER BY 内的列名不标识结果表中的列。
42709 在键列列表中指定了重复的列名。
42710 检测到重复的对象或约束名。
42617 语句字符串是空白或空的。
42618 不允许主机变量。
42620 对 UPDATE 子句指定了只读 SCROLL。
42621 检查约束无效。
42622 名称或标号太长。
42623 不能指定 DEFAULT 子句。
42625 CASE 表达式无效。
42627 必须在使用 EXPRESSION AS 子句的谓词规范之前指定 RETURNS 子句。
DB2Sql语法错误状态

-156 42809 在视图上建立索引是非法的,或者在ALTER TABLE,CREATE TRIGGER,DROP TABLE或LOCKTABLE
语句上指定一个不是表的其他对象这是无效的
-157 42810 必须在FOREIGN KEY语句中指定一个表名
-158 42811 视图的列和选择列表中的列不相匹配
以后)将不再支持他们
+658 01600 当建立目录索引时,不能指定SUBPAGES语句,SUBPAGES将被忽略,并缺省为1
+664 01540 分区索引的限制关键字超出了最大值
+738 01530 已命名的对象的更改可能像只读系统中对象的改变要求一样
+799 0157 SET语句中引用的特定寄存器不存在,将忽略 SET请求
+206 01533 命名的列不在SQL语句中指定的任何表中存在
+218 01537 因为SQL语句引用一个远程对象,不能为该SQL语句执行EXPLAIN
+219 01532 命名的PLAN TABLE不存在
+220 01546 不正确定义PLAN TABLE,检查命名列的定义
-126 42829 不能为一个UPDATE语句指定ORDER BY语句
-127 42905 在子选择中DISTINCT只能指定一次
-128 42601 SQL谓词中NULL使用不当
-129 54004 SQL语句中包含的表多于15个
-130 22019 ESCAPE语句必须为一个字符
22025 无效的ESCAPE模式
-131 42818 LIKE谓词只能用于字符数据
-132 42824 LIKE语句、ESCAPE语句、LOCATE函数或POSSTR函数中有无效运算对象
DB2 sqlcode大全

DB2错误信息sqlcode sqlstate 说明000 00000 SQL语句句成功完成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 01005 SQLDA中的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 sqlcode

-151 42808 试图更新一个不可更新的视图的列、一个DB2 CATALOG表的列或者一个ROWID列
-152 42809 DROP CHECK试图删除一个参照约束,或者DROP FOREIGN试图删除一个检查约束
+2002 01624 因为指定的缓冲池不允许超高速缓存,GNPCACHE指定被忽略
+2007 01602 因为DB2子系统的参数禁用“提示(hiats)”所以不能指定优化提示
+30100 01558 分布式协议错误被检测到,提供原来的SQLCODE和SQLSTATE
-007 42601 SQL语句中由非法字符
-118 42902 数据修改语句(UPDATE或DELETE)和FROM语句中的表和视图命名不合法
-119 42803 HAVING语句中的列的列表与GROUP BY语句中的列列表不匹配
-120 42903 不允许WHERE语句、SET语句、VALUES语句或者SET ASSIGNMENT语句引用列函数
-181 22001 不是有效的DATE、TIME、TIMESTAMP值
-182 42816 在算术表达式中的日期/时间值无效
-183 22008 在算术表达式中返回的日期/时间值的结果不在有效值的范围内
+802 01519 数据溢出或者因除法异常而引起的数据异常错误
+806 01553 ISOLATION(RR)与LOCKSIZE PAGE 冲突
+807 01554 由于十进制乘法导致溢出
+863 01539 连接成功,但是只支持SBCS
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就是有问题,都可以用下面方法解决。
db2错误代码SQLState

DB2常见错误及解决办法

解决办法:db2 update db cfg for dbname using UTIL_HEAP_SZ 具体的数字(db2备份使用的内存是UTIL_HEAP_SZ,请使用以上命令调整)。
7、用JDBC往表批量插入数据时。报23502错误。如:
DB2常见错误及解决办法
文章分类:数据库
1、创建数据库的时候,报42704错误。如:
Sql代码
=>create database test
=>SQL0204N "SYSTEM_1386_US" is an undefined name. SQLSTATE=42704
解决办法:
解决办法:查看表定义,加大字段长度。
9、用JDBC往表批量插入数据时。报-4474错误。如:
Sql代码
非法转换:不能从“ng.String”转换到“byte[]” ERRORCODE=-4474, SQLSTATE=null
原因:表中某字段定义为‘ID CHAR(16) FOR BIT DATA NOT NULL’(这个是使用MTK从MS SQL迁移到DB2时,uniqueidentifier转换成的)。
Contents = Any data
State = 0x0020
Detailed explanation:
Backup pending
原因:在归档的数据库做过load或者改了参数重新启动了db
Sql代码
Error for batch element #0: DB2 SQL error: SQLCODE: -407, SQLSTATE: 23502, SQLERRMC: TBSPACEID=2, TABLEID=15, COLNO=2
DB2错误码(续)

DB2错误码(续)SQL6010N下载的 QMF ⽂件带有 255 个以上的数据列。
SQL6011N不能处理列名称(第列号列)的数据类型号码(类型⽂本)。
SQL6012N对命令指定了太多参数。
SQL6013N主机⽂件名主机⽂件名太长,或未以字母字符开头。
SQL6014N⽆效命令语法,冒号(“:”)应跟随着关键字。
SQL6015N不识别关键字。
SQL6016NSystem/370 ⽂件名名称的操作数太多。
SQL6017NImport 消息记录名称中可能包含更多信息。
SQL6018N未指定 S/370 ⽂件名。
SQL6019N通信短会话标识标识太长或⽆效。
SQL6020N指定了导⼊选项,但未同时提供数据库名称。
SQL6021N数据导⼊成功。
SQL6022N系统数据库⽬录不被所有节点共享。
SQL6023N⽤户没有在表名称上运⾏“获取表分区信息”实⽤程序的权限。
SQL6024E未在节点节点号上定义表或索引名称。
SQL6025N不能将在节点节点-1 上备份的数据库复原到节点节点-2 上。
SQL6026N不能将⽬录节点为节点-1 的数据库复原到⽬录节点为节点-2 的数据库。
SQL6027N数据库⽬录路径路径⽆效。
SQL6028N因为在本地数据库⽬录中找不到数据库数据库名称,所以⽬录数据库失败。
SQL6030NSTART 或 STOP DATABASE MANAGER 失败。
原因码为原因码。
SQL6031N在 db2nodes.cfg ⽂件的第⾏号⾏上出错。
原因码为原因码。
SQL6032W在总数个节点上尝试了启动命令处理。
成功启动了已启动的数⽬个节点。
已启动了已启动的数⽬个节点。
未能启动未启动的数⽬个节点。
SQL6033W在总数个节点上尝试了停⽌命令处理。
成功停⽌了已停⽌的数⽬个节点。
已停⽌了已停⽌的数⽬个节点。
未能停⽌未停⽌的数⽬个节点。
SQL6034W节点节点未被任何数据库使⽤。
SQL6035W数据库数据库正使⽤数据库分区分区名称。