解决方法是:
rs.next()
如果有需要循环的,加上while(rs.next())
以下是我测试时的代码分析:
在java程序中,想要结合SQL语句统计出学生的人数,在数据库测试语句为:
SELECT COUNT(*) FROM student
结果没问题。
放到java中,测试语句为:
这是dao中:
public int studentNum()
{
int id=0;
sql="select count(*) from student";
try {
ps=conn.prepareStatement(sql);
ResultSet rs=ps.executeQuery();
rs.next();
id=rs.getInt("count(*)");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return id;
}
action中(业务逻辑)
studentDAO sDAO=new studentDAO();
int id=sDao.studentNum();
System.out.println("当前学生人数" +id);
最后输出结果是正确的。