我正在尝试检查表中是否存在条目。我使用了以下资源并在 mysql 工作台中运行代码来查看是否运行错误,但事实并非如此。
检查ResultSet是否已满 -> Is ResultSet Filled
SQL 语法 -> SQL
这是我正在运行的当前代码
public static Boolean exists(Table t, int userId){
boolean e = false;
if (connection != null){
try {
String SQL = "SELECT EXISTS(SELECT 1 FROM " + t.table + " WHERE id = " + String.valueOf(userId) + ")";
System.out.println(SQL);
stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery(SQL);
if (isFilled(rs))
e = true;
} catch (SQLException l) {
l.printStackTrace();
}
}
return e;
}
public static boolean isFilled(ResultSet rs){
boolean isEmpty = true;
try {
while(rs.next()){
isEmpty = false;
}
} catch (SQLException e) {
e.printStackTrace();
}
return !isEmpty;
}
无论我输入什么用户ID,问题都存在总是返回true
最佳答案
因此,根据您的问题,您想要检查相应 ID 的行是否可用。
因此,您可以轻松地做到这一点。
String sql_res= "select * from students where sid=2";
rs=st.executeQuery(sql_res);
然后检查该行是否存在
//it will print true if a row exists for the given id and false if not.
System.out.println(rs.next());
关于java - JDBC 检查条目是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46061989/