大家好,我以前处理oracle数据库大字段时没啥问题,比如
插入一条记录 将大字段 对应使用 empty_clob() 函数代替,然后 select for update这条记录
然后在改写大字段内容,最后commit提交
但是 我现在使用 db2数据库 报 classcast 异常,啥原因? shi因为 数据库jdbc jar不正确 还是?
我的部分代码:
if(rs.next()){
COM.ibm.db2.app.Clob msgClob = (COM.ibm.db2.app.Clob)rs.getClob(Alert_logPoHelper.OP_MSG.getName());
COM.ibm.db2.app.Clob descClob = (COM.ibm.db2.app.Clob)rs.getClob(Alert_logPoHelper.OP_DESC.getName());
try {
Writer writer = msgClob.getWriter();
writer.write(msgInfo.toCharArray());
writer.flush(); //强制写入
writer.close(); //关闭
writer = descClob.getWriter();
writer.write(desInfo.toCharArray());
} catch (Exception e) {
e.printStackTrace();
}
}
java.lang.ClassCastException: com.ibm.db2.jcc.b.vd
at com.mjp.system.SystemLogUtil$1.callBack(SystemLogUtil.java:77)
at com.mjp.core.db.MyQueryRunner.rsQuery(MyQueryRunner.java:160)
at com.mjp.system.SystemLogUtil.dbLog(SystemLogUtil.java:93)
at com.mjp.system.SystemLogUtil.main(SystemLogUtil.java:131)
不能将 java.sql.Clob 转换成 COM.ibm.db2.app.Clob ?
大家 在db2上是如何操作 Clob的?