
[英]com.ibm.db2.jcc.c.SqlException: The syntax of the string representation of a datetime value is incorrect
[英]com.ibm.db2.jcc.am.SqlException: UNSUCCESSFUL EXECUTION CAUSED BY AN UNAVAILABLE RESOURCE. REASON 00C90096
我想将多线程 function 中的多条记录插入到数据库中,在插入特定数量的记录后,我总是出现以下异常:
Outermost stacktrace: com.ibm.db2.jcc.am.SqlException: UNSUCCESSFUL EXECUTION CAUSED BY AN UNAVAILABLE RESOURCE. REASON 00C90096, TYPE OF RESOURCE 00000304, AND RESOURCE NAME X'0005AB8C'.X'02'. SQLCODE=-904, SQLSTATE=57011, DRIVER=4.31.10
at com.ibm.db2.jcc.am.b7.a(b7.java:815)
at com.ibm.db2.jcc.am.b7.a(b7.java:66)
at com.ibm.db2.jcc.am.b7.a(b7.java:140)
at com.ibm.db2.jcc.am.k_.b(k_.java:2491)
at com.ibm.db2.jcc.am.k_.c(k_.java:2472)
at com.ibm.db2.jcc.t4.ab.n(ab.java:917)
at com.ibm.db2.jcc.t4.ab.a(ab.java:118)
at com.ibm.db2.jcc.t4.p.a(p.java:50)
at com.ibm.db2.jcc.t4.aw.b(aw.java:220)
at com.ibm.db2.jcc.am.la.bm(la.java:3632)
at com.ibm.db2.jcc.am.la.a(la.java:4677)
at com.ibm.db2.jcc.am.la.b(la.java:4215)
at com.ibm.db2.jcc.am.la.be(la.java:832)
那是因为我试图通过多个线程写入数据库吗? 是什么原因?
根据 IBM 文档:
由消息 DSNT500I 或 DSNT501I 中的 NAME 资源名称值标识的页面或子页面上的页面或行锁导致并发持有的页面或行锁总数达到允许的安装最大页面或行锁数 (NUMLKUS)系统中的单个代理
我假设您必须减少脏页的数量,或者换句话说,减少对数据库的未提交更改。 或者,您也可以在此过程中提交更改,以减少未提交更改的数量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.