我正在学习有关 jdbc 的教程,但没有显示它抛出上述异常的行数。我一直在努力寻找解决方案,但无济于事。任何人都可以阐明这个问题。
Connection conn = null;
Statement stmt = null;
ResultSet rs= null;
try {
conn = DriverManager.getConnection(CONN_STRING, USERNAME, PASSWORD);
stmt =conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery("SELECT * FROM states");
rs.last();
System.out.println("Number of rows: " +rs.getRow());
} catch (SQLException e) {
System.err.println(e);
} finally {
if (conn != null) {
conn.close();
}
}
}
最佳答案
这里的异常与获取结果集的大小无关。
看看documentation对于 SQLInvalidAuthorizationSpecException:
这表示在连接建立期间提供的授权凭据无效。
其次,要获取结果集中的行数,您可以使用 rs.getFetchSize()
而不是您的逻辑。
关于java - 尝试对 mysql 中的行进行计数得到错误 java.sql.SQLInvalidAuthorizationSpecException :,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20376214/