我想打印从JDBC(mysql数据库)中的updateQuery()语句检索到的行数。我现在的代码是:
int rows=0;
//constructor sets this up like opening connection, etc...
String buildSelectQuery = buildSelectQueryForCode();
stmt = connection.createStatement();
rows= stmt.executeUpdate(buildSelectQuery); <---- mismatch
System.out.println(rows);
buildSelectQuery是CREATE VIEW viewName AS (SELECT * FROM tableName WHERE gen-congruence>1)
。类中还有一个getRows方法:
public String getRows(){
return Integer.toString(rows);
}
现在,理想情况下,此查询应该提取超过2000条记录,这也在视图中完成(实际上在数据库中),但getRows(在GUI中调用)在视图中打印出错误的行数(0)我不明白为什么。是否有另一种方法来设置结果集?难道我做错了什么?请帮帮我。
答案 0 :(得分:1)
您的查询正在创建视图,而不是从视图中进行选择,因此不会返回任何行。在读取某些行时,您需要更新行。