我试图访问我的数据库,注入一些SQL代码并从中返回值。
首先,我是这方面的新手,但我想出了以下代码:
public static ResultSet checkCmdAmount() throws Exception {
try {
// This will load the MySQL driver, each DB has its own driver
Class.forName("com.mysql.jdbc.Driver");
// Setup the connection with the DB
connect = DriverManager.getConnection(""+MyBot.mysqlDbPath+"",""+MyBot.mysqlDbUsername+"",""+MyBot.mysqlDbPassword+"");
PreparedStatement zpst=null;
ResultSet zrs=null;
zpst=connect.prepareStatement("SELECT COUNT(1) FROM eigenebenutzerbefehle");
zrs=zpst.executeQuery();
return zrs;
}catch (Exception e) {
throw e;
} finally {
close();
}
}
作为回报,我得到了以下信息:
ResultSet: com.mysql.jdbc.JDBC4ResultSet@196da649
但我想知道表中的行数。
当我通过phpmyadmin执行sql代码时,得到3,这是正确的。
这里怎么了?
最佳答案
您需要从结果集读取并获取所需的值。按以下步骤操作:
public static int checkCmdAmount() throws Exception {
// ...
int count = 0;
while (zrs.next()) {
// Get the values from the current row...
count = zrs.getInt(1);
}
return count;
}