当前位置: 首页 > 工具软件 > table2sql > 使用案例 >

DB2 SQL Error: SQLCODE=-407,SQLSTATE=23502,SQLERRMC=TBSPACED=2,TABLEID=-16895,COLNO=7,DRIVER=4.26.14

景稳
2023-12-01

解决思路:

首先出现SQLCODE=-407,SQLSTATE=23502应该是更新Table的时候某个字段为NULL,但是Table那个表字段约束是不为NULL,导致出现的问题。

步骤:

1.通过错误信息的“TBSPACED=2,TABLEID=-16895”,你可以通过查询SYSCAT.TABLES获取Table的信息:

SELECT * FROM SYSCAT.TABLES WHERE TBSPACED = 2 AND TABLEID = -16895;

2.然后再根据刚刚查出来的TABNAME和错误信息中的COLNO=7查询SYSCAT.COLUMNS,获取Table中相应的字段名称:

SELECT * FROM SYSCAT.COLUMNS WHERE TABNAME = 'OTC_CCY_OPTION_LEG' AND COLNO = 7;

3.最后根据查询找到对应的字段,发现确实有不为NULL的约束,代码传的却是NULL。修改相应代码成功解决问题。

 类似资料: