DB2 SQLCODE: -407, SQLSTATE: 23502 SQLCODE: -407, SQLSTATE: 23502:这个报错的准确描述是这样的,不能把NULL值插入到定义为NOT NULL的列中。也就是违反了完整性约束异常。 仔细观察这段报错信息:SQLCODE: -407, SQLSTATE: 23502, SQLERRMC: TBSPACEID=2, TABLEID=201, COLNO=3。可以发现这个报错信息已经...
关于db2 的SQLCODE=-407, SQLSTATE=23502,错误原因是不能把NULL值插到定义为NOT NULL的列中 而后面的SQLERRMC=TBSPACEID=5, TABLEID=30, COLNO=149, 可以说是错误的详细定位. TBSPACEID=5, TABLEID=30,可以查看出是详细的那张表,SYSCAT.TABLES是系统表 剩下的COLNO=149 则是具体的哪一个字段: ...
DB2 SQL Error: SQLCODE=-302, SQLSTATE=22001;原因:sql中要更新的某个字段的长度超过了数据库表中字段的定义长度。 SQLCODE=-407, SQLSTATE=23502;原因:把NULL值插入到定义为NOT NULL的列中。也就是违反了完整性约束异常。 SQLCODE=-803, SQLSTATE=23505;原因:主键冲突,违反唯一性约束,若主键为自增id,使用i...
判断那个字段不可为空 错误:DB2 SQL Error: SQLCODE=-407, SQLSTATE=23502, SQLERRMC=TBSPACEID=2, TABLEID=1284, COLNO=31, DRIVER=4.21.29 解决:①SELECT * FROM SYSCAT.TABLES WHERE TBSPACEID='2' AND TABLEID = '1284'; ②SELECT * FROM SYSCAT.COLUMNS WHERE TABSCHEMA = 'CMS3' AND TABNAME ...
根据SQLCODE我们可以知道此异常是将非空的字段放入了空值 1.先查询出具体报错的表 2.再根据查询出的结果查询具体的字段
sqlcodesqlstate说明00000000SQL语句成功完成01xxxSQL语句成功完成,但是有警告+01201545未限定的列名被解释为一个有相互关系的引用+09801568动态SQL语句用分号结束+10002000没有找到满足SQL语句的行+11001561用DATA CAPTURE定义
sqlcode sqlstate 说明 000 00000 SQL语句成功完成 01xxx SQL语句成功完成,但是有警告 +012 01545 未限定的列名被解释为一个有相互关系的引用 +098 01568 动态SQL语句用分号结束 +100 02000 没有找到满足SQL语句的行 +110 01561 用DATA CAPTURE定义的表的更新操作不能发送到原来的子系统 ...
Sql代码 复制 =>create databasetest=>SQL0204N "SYSTEM_1386_US" is an undefined name.SQLSTATE=42704=>create databasetest=>SQL0204N "SYSTEM_1386_US" is an undefined name.SQLSTATE=42704 1. 2. 3. 4. 解决办法:Sql代码 复制 =>create database test using codeset gbk territorycn=>create data...
报23502错误。如:Sql代码Errorforbatchelement#0:DB2SQLerror:SQLCODE:-407,SQLSTATE:23502,SQLERRMC:TBSPACEID=2,TABLEID=15,COLNO=2原因:往表中有非空约束的字段,插入空值。解决办法:查看表定义,去掉非空约束,或加入非空值。8、用JDBC往表批量插入数据时。报22001错误。如:Sql代码DB2SQLError:SQLCODE=-302,...