以下的文章主要描述的是DB2数据库错误信息,是DB2数据库错误信息在实际的应用中是经常出现的,在实际的运行中会带来很多的不便,以下的文章就是对DB2数据库错误信息的示例。以下就是文章的主要内容描述。

数据库

这个问题,搞了几天,整的我都快崩溃了。

DB2数据库错误信息:

    com.ibm.db2.jcc.b.SqlException:DB2SQLerror:SQLCODE:-407,SQLSTATE:23502,SQLERRMC:TBSPACEID=2,TABLEID=640,COLNO=0atcom.ibm.db2.jcc.b.ig.e(ig.java:1594) atcom.ibm.db2.jcc.b.ig.a(ig.java:1223) atcom.ibm.db2.jcc.c.gb.n(gb.java:718) atcom.ibm.db2.jcc.c.gb.i(gb.java:255) atcom.ibm.db2.jcc.c.gb.c(gb.java:53) atcom.ibm.db2.jcc.c.w.c(w.java:46) atcom.ibm.db2.jcc.c.vb.g(vb.java:151) atcom.ibm.db2.jcc.b.ig.p(ig.java:1218) atcom.ibm.db2.jcc.b.jg.d(jg.java:2340) atcom.ibm.db2.jcc.b.jg.W(jg.java:463) atcom.ibm.db2.jcc.b.jg.executeUpdate(jg.java:446) atorg.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:1968)

解决方法:

其中对于DB2数据库错误信息的说明:SQLSTATE: 23502 插入或更新值为空,但该列不能包含空值。

SQLERRMC: TBSPACEID=2, TABLEID=640, COLNO=0 :在DB2 数据库中隐藏着一个内部表,专存储数据库的各个表,select * from syscat.tables where tableid=640 ; 注:TBSPACEID, TABLEID, COLNO 都是表tables 中的字段。

在所查到的表中设置自增主键。在hibernate中配置文件中设置自增属性为“native”。即解决此问题。

以上的相关内容就是对DB2数据库错误信息的介绍,望你能有所收获。

【编辑推荐】

    windows系统下知道DB2端口号的“妙招”DB2数据库CODESET与LinuxDB2双机HA的实现在Linux上很简单!linux DB2 v9.7的好用方案!DB2数据库的安装在linux如何实现?