Java jdbc preparedstatements 如何检查空行
Java jdbc preparedstatements how can I check for empty row
我正在我的应用程序中实现一个 forgot_password 类型的功能,但我找不到如何检查我是否返回了任何行。用户首先输入 his/her 电子邮件,然后我搜索数据库,如果找到电子邮件,则继续,否则停止并告诉他们他们的电子邮件未找到;这是我的代码
Connection dbConnection=null;
dbConnection= DB.getConnection();
PreparedStatement preparedStatement= dbConnection.prepareStatement("Select email,password from profiles where email=?");
preparedStatement.setString(1, User_Email);
preparedStatement.executeQuery();
// This code is not working below empty null rows still say email found
if(preparedStatement==null)
{
return ok("Email not found");
}
else
{
return ok("Email Found");
}
User_Email 字符串工作正常,我已经验证,但似乎
preparedStatement==null什么都不做
不,你走错了路。 executeQuery()
returns一个ResultSet
。您只需要检查 ResultSet 是否有行。
ResultSet rs = preparedStatement.executeQuery();
if (rs.next()) {
//example
String email = rs.getString(1);
String pw = rs.getString(2);
}
else{
//no results!!
}
我正在我的应用程序中实现一个 forgot_password 类型的功能,但我找不到如何检查我是否返回了任何行。用户首先输入 his/her 电子邮件,然后我搜索数据库,如果找到电子邮件,则继续,否则停止并告诉他们他们的电子邮件未找到;这是我的代码
Connection dbConnection=null;
dbConnection= DB.getConnection();
PreparedStatement preparedStatement= dbConnection.prepareStatement("Select email,password from profiles where email=?");
preparedStatement.setString(1, User_Email);
preparedStatement.executeQuery();
// This code is not working below empty null rows still say email found
if(preparedStatement==null)
{
return ok("Email not found");
}
else
{
return ok("Email Found");
}
User_Email 字符串工作正常,我已经验证,但似乎
preparedStatement==null什么都不做
不,你走错了路。 executeQuery()
returns一个ResultSet
。您只需要检查 ResultSet 是否有行。
ResultSet rs = preparedStatement.executeQuery();
if (rs.next()) {
//example
String email = rs.getString(1);
String pw = rs.getString(2);
}
else{
//no results!!
}