com.ibm.db2.jcc.b.SQLException: bug check
操作步骤:
1。正确创建了一个connection,执行一条错误的sql语句,出现异常;
2。再用该连接执行一条正确的sql语句,就出现标题中的错误。貌似DB2在一个连接上执行sql语句出错后就不能再使用该连接了,必须要创建一个新的连接。网上说需要下载fixpack来修复该问题,但我一直没找到。请高手指点!
下面是一个小方法:
public boolean isTableExist(String schemaName, String tableName) {
String[] types = new String[] {
"TABLE"};
Connection conn = getConn();
try {
DatabaseMetaData dbMetaData = conn.
getMetaData();
conn.createStatement().execute("CREATE SCHEMA NULLID");//模式NULLID已经存在,所以会执行出错;
}
catch (SQLException ex1) {
ex1.printStackTrace();
}
try {
DatabaseMetaData dbMetaData = conn.getMetaData();//报错,com.ibm.db2.jcc.b.SQLException: bug check
ResultSet rs = dbMetaData.getTables(null, schemaName,
tableName, types);
if (rs.next()) {
return true;
}
else {
return false;
}
}
catch (SQLException ex) {
ex.printStackTrace();
}
catch (Exception ex) {
ex.fillInStackTrace();
}
return false;
}