我对 db 进行了查询,结果是通过 a 获得的java.sql.ResultSet
,因为此查询是动态的,返回的列数可能是 5 或 7,过去使用相同的代码会生成“未找到列异常”和包含在以下捕获中:
try{
sTemp = this.rsResults.getString("col3");
}catch(Exception e){}
但是现在使用相同的尝试和捕获(唯一的区别是现在我正在使用combopooldatasource
和它们的连接),我得到了两个不属于捕获的异常。
我该如何改善这一点,有没有更好的方法来检查列是否存在?c3p0 是否必须基于 a 强制测试连接(SQLState: S0022) column not found error
?
Error n1 - in the com.mchange.v2.c3p0.impl.NewProxyResultSet.getString qlUtils.toSQLException() - Attempted to convert SQLException to SQLException. Leaving it alone. [SQLState: S0022; errorCode: 0]
java.sql.SQLException: Column 'col3' not found.
Error n2 - DefaultConnectionTester.statusOnException() - Testing a Connection in response to an Exception:
java.sql.SQLException: Column 'col3' not found.
ps:使用的驱动是一样的org.gjt.mm.mysql.Driver