在java文件中查找表的大小
在mysql命令行中,当我发出命令时: 从用户中选择计数(*)表; 它工作正常。它告诉我桌子的大小 但是,我想在Java文件中获取结果。因此,我在Java文件中编写了下面的代码。但是它不起作用在java文件中查找表的大小,java,mysql,jdbc,Java,Mysql,Jdbc,在mysql命令行中,当我发出命令时: 从用户中选择计数(*)表; 它工作正常。它告诉我桌子的大小 但是,我想在Java文件中获取结果。因此,我在Java文件中编写了下面的代码。但是它不起作用 public int f() { ResultSet rs; int i; String query = "select count(*) tables from users"; Statement st = this.con.createStatement(); //er
public int f()
{
ResultSet rs;
int i;
String query = "select count(*) tables from users";
Statement st = this.con.createStatement(); //error
rs = st.executeQuery(query); //error
if(rs.next()) //error
{ //error
i = rs.getInt(1); //error
}
return i; //error
}
如何在Java文件中获取表的大小?您从未使用next()方法检查resultSet是否有数据 发件人: 下一个方法将光标移动到下一行 另外,
ResultSet
具有getInt()
方法,而不是getInt()
,java区分大小写
编辑:您必须在代码中处理或声明SQLException(选中的异常)。是否会抛出SQLException
rs.GetInt(1)
?你确定这个查询行得通吗?我肯定不行。仅在这一行中可以看到错误:i=rs.GetInt(1)@user1308990这是一个编译器错误,因为resultSet没有GetInt(),它有GetInt()。此外,在从表中检索数据之前,您应该调用rs.next()。请参见下面的答案。您是否正确初始化了此.con字段中的连接?看在上帝的份上。错误不仅仅是危险信号。它们带有一条消息,发生在运行时或编译时。如果需要帮助,请粘贴准确的错误消息。你也可以试着阅读、理解它们,然后用谷歌搜索它们。“它不起作用”是对你可能给出的问题最糟糕的描述。我把GetInt改成了GetInt。但是,现在,错误的数量增加了。我已经编辑了代码哇!!!!!!!这是我应该知道的一点!!非常感谢,我的朋友。我不知道我必须使用SQLException。我说得对吗?是否必须使用SQLException?为什么以及在什么情况下?@user1308990欢迎您查看此链接了解SQLException。它将让您在连接时了解数据库错误(如果有)@用户1308990当然,这是一个已检查的异常。所以,你必须处理它。否则会出现编译器错误
public int f() throws SQLException {
//rest of your code
rs = st.executeQuery(query);
if(rs.next()){
i = rs.getInt(1);
}
//rest of your code
}