使用 executeUpdate 的 SELECT 查询的行为
我在错误地使用SELECT查询时遇到了一个奇怪的行为。而 Javadoc 明确指出,如果给定的 SQL 语句会生成一个 ResultSet 对象。但是当我执行时,我没有任何例外。相反,我得到的返回值与no相同。所选行的数量(如果不是)。小于或等于 10。如果没有。大于 10,返回值始终为 10。Statement#executeUpdate()
executeUpdate() throws SQLException
SELECT * from TABLE_NAME
Connection conn;
Statement stmt;
try {
conn = getConnection();
stmt = conn.createStatement();
int count = stmt.executeUpdate("SELECT * from TABLE_NAME");
log.info("row count: " + count);
} catch (SQLException e) {
log.error(e);
// handle exception
} finally {
DbUtils.closeQuietly(stmt);
DbUtils.closeQuietly(conn);
}
我使用的是Oracle 10g。
我在这里遗漏了什么,还是由驾驶员来定义自己的行为?