以下的文章主要描述的是DB2数据库错误信息,是DB2数据库错误信息在实际的应用中是经常出现的,在实际的运行中会带来很多的不便,以下的文章就是对DB2数据库错误信息的示例。以下就是文章的主要内容描述。
数据库
这个问题,搞了几天,整的我都快崩溃了。
DB2数据库错误信息:
- com.ibm.db2.jcc.b.SqlException: DB2 SQL error: SQLCODE: -407, SQLSTATE: 23502, SQLERRMC: TBSPACEID=2, TABLEID=640, COLNO=0
- at com.ibm.db2.jcc.b.ig.e(ig.java:1594)
- at com.ibm.db2.jcc.b.ig.a(ig.java:1223)
- at com.ibm.db2.jcc.c.gb.n(gb.java:718)
- at com.ibm.db2.jcc.c.gb.i(gb.java:255)
- at com.ibm.db2.jcc.c.gb.c(gb.java:53)
- at com.ibm.db2.jcc.c.w.c(w.java:46)
- at com.ibm.db2.jcc.c.vb.g(vb.java:151)
- at com.ibm.db2.jcc.b.ig.p(ig.java:1218)
- at com.ibm.db2.jcc.b.jg.d(jg.java:2340)
- at com.ibm.db2.jcc.b.jg.W(jg.java:463)
- at com.ibm.db2.jcc.b.jg.executeUpdate(jg.java:446)
- at org.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数据库错误信息的介绍,望你能有所收获。
【编辑推荐】