我正在制作一个程序,我必须获取MySQL数据库中的行数。我的表有4行但由于某种原因我每次运行程序时都得到数字1。这是我的代码:
public static void showItems() throws Exception {
try{
Connection con = getConnection();
Statement search = con.createStatement();
ResultSet rs = search.executeQuery("SELECT COUNT(id) FROM main;");
int rows = 0;
rs.beforeFirst();
while (rs.next()){
rows++;
}
System.out.println(rows);
有人能帮助我吗?我在这做错了什么? 我尝试了许多不同的方法,没有人给我正确的价值。
提前致谢!
答案 0 :(得分:2)
您的查询返回一行并包含值4(表中行数的计数)。
直接在数据库客户端中运行您的查询并查看您获得的内容。
这段代码应该告诉你如何获得" 4"。尝试使用此循环代替包含" row ++":
的循环while (rs.next()) {
System.out.println(rs.getInt(1));
}