DB2 SQL Error: SQLCODE=-803, SQLSTATE=23505, SQLERRMC=2 (转载)

http://blog.csdn.net/xiyuan1999/article/details/5706230

DB2 SQL Error: SQLCODE=-803, SQLSTATE=23505, SQLERRMC=2 。

1、查了下,大概意思是违反了唯一性约束啊!

2、不过,我db2 describe table XX后发现这个表只有ID是不能为空的啊!

3、最后,直接写了条SQL在命令行执行,同样的错和代码

最后,我查了下表的索引,发现建了个组合索引,才恍然大悟。

原来,DBA昨天建了唯一性约束和索引导致的!

时间: 2024-11-19 17:48:31

DB2 SQL Error: SQLCODE=-803, SQLSTATE=23505, SQLERRMC=2 (转载)的相关文章

DB2 SQL Error: SQLCODE=-1585, SQLSTATE=54048

DB2 执行SQL报错: DB2 SQL Error: SQLCODE=-1585, SQLSTATE=54048 你建的db2数据库没有建足够大的临时表空间,新建一个足够大的临时表空间 1.创建数据库 db2 "create database testdb automatic storage yes on /dbauto dbpath on /database using codeset UTF-8 territory cn collate using system" dbpath

数据库报错: SQLCODE: -418, SQLSTATE: 42610, SQLERRMC: null

我在用org.springframework.jdbc.core.JdbcTemplate执行这样一句sql时报错了: INSERT INTO customerbranch ( id , OPTIMISTIC , frp_id , paymentchannel , customer_id ,bank_id ,updatetime) SELECT NEXT VALUE FOR customerbranch_ID_SEQUENCE , 0, 1005, 'NET' , ?, bankid , CUR

DB2 Error : SQLCODE=-802,SQLSTATE=22003 异常的原因

使用DB2时,报错为 DB2 Error : SQLCODE=-802,SQLSTATE=22003 主要原因: 是我们sql语句使用某个字段*86400后结果非常大,导致无法返回结果:因为某个字段*86400后的结果是一个整数型的数据 ,位数不能超过限定 解决的办法: 在其前面的字段加上double,这样就可以扩大数据值的范围 原文地址:https://www.cnblogs.com/xuyufengme/p/10842450.html

SQLCODE=-668, SQLSTATE=57016, SQLERRMC=7

当前表出于 装入暂挂状态,使用重组命令(reorg) 不起作用,报SQL-104, 然后从网上百度了大量解除 DB2暂挂的命令均不好使,最后采用了对表的runstats单个优化,也是类似reorg的单个表初始化 命令,具体命令是 runstats on table  tablename ;

常见DB2 sql错误码积累

DB2 SQL Error: SQLCODE=-302, SQLSTATE=22001:原因:sql中要更新的某个字段的长度超过了数据库表中字段的定义长度. SQLCODE=-407, SQLSTATE=23502:原因:把NULL值插入到定义为NOT NULL的列中.也就是违反了完整性约束异常. SQLCODE=-803, SQLSTATE=23505:原因:自增id违反唯一性约束,使用insert 语句进行插入新的记录时,可以将自增id设为"DEFAULT". 例:insert i

DB2 SQL 错误(SQLCODE:-964,SQLSTATE:57011)处理方法

故障现象描述: 执行 SQL 语句时,出现类似如下错误消息. 指令 SQL:insert into t_stat_file_temp SQLSTATE:57011,供应商错误代码:-964 DB2 SQL 错误:SQLCODE:-964,SQLSTATE:57011, SQLERRMC:空 故障原因说明: 数据库堆中没有足够的存储空间可用于处理该语句,此错误消息是事务日志中耗尽空间的结果. 故障处理方式: 1 方式一:扩展事务日志存储空间 通过类似如下语句调整主日志文件数,以及辅助日志文件数.

DB2:在缓冲池 "1" 中当前没有任何页面可用。. SQLCODE=-1218, SQLSTATE=57011, DRIVER=3.61.75

服务器端DB2数据库最近频繁报错: 在缓冲池 "1" 中当前没有任何页面可用.. SQLCODE=-1218, SQLSTATE=57011, DRIVER=3.61.75 试验发现简单的查询SQL执行没有问题,复杂的SQL就会报上述错误. 百度发现是因为数据库bufferpool太小,需要增加bufferpool大小. 操作步骤: 1.查看默认IBMDEFAULTBP大小: 2.设置IBMDEFAULTBP大小为12800: 3.重启数据库实例,然后执行复杂SQL,发现已经没有问题了

[转]MySQL保留关键字(SQL Error: 1064, SQLState: 42000错误)

在MySQL 中,下表中的字显式被保留.其中大多数字进制被标准SQL 用作列名和/ 或表名( 例如,GROUP ) .少数被保留了,因为MySQL 需要它们,( 目前) 使用yacc 解析程序.保留字 被引起来后可以用作识别符. 你不小心使用了下面的关键字  那么就会报这个错误 “SQL Error: 1064, SQLState: 42000错误” ADD ALL ALTER ANALYZE AND AS ASC ASENSITIVE BEFORE BETWEEN BIGINT BINARY

SQL Error: 1064, SQLState: 42000错误

在MySQL 中,下表中的字显式被保留.其中大多数字进制被标准SQL 用作列名和/ 或表名( 例如,GROUP ) .少数被保留了,因为MySQL 需要它们,( 目前) 使用yacc 解析程序.保留字 被引起来后可以用作识别符. 你不小心使用了下面的关键字  那么就会报这个错误 “SQL Error: 1064, SQLState: 42000错误” ADD ALL ALTER ANALYZE AND AS ASC ASENSITIVE BEFORE BETWEEN BIGINT BINARY