我´我是sql新手。我的目标是,创建一个程序,它应该检查某个表是否具有某个值。我´我写了这个方法
public boolean existString(final String query) {
try {
final Statement statement = this.conn.createStatement();
result = statement.executeQuery(query);
return true;
} catch(SQLException e) {
e.printStackTrace();
return false;
}
}
如您所见,它是一种执行sql语句的方法。我认为这可能是正确的说法:
String query = "select * from table where column1 = 'checkvalue'"; // of course i need to replace table and column and checkvalue
但是在执行这个语句之后,我如何证明它是否成功(查询是否返回了一些东西)?如果执行后的语句将返回某些内容,我可以轻松地使用if语句进行检查。
2条答案
按热度按时间f2uvfpb91#
如果数据库中没有返回行,那么sql语句可以成功返回,因此使用
SQLException
如果查询正确但不存在匹配项,则对您没有帮助。你应该利用这个事实
result.next()
尝试将结果指针移动到下一行并返回是否有要返回的行。这样,如果成功并有结果ir返回true
成功而不是结果,它会回来false
. 如果出了问题,您的异常处理将负责其余的工作。pu3pd22g2#
是的,您的方法和sql查询足以进行检查。如果查询中没有行输出,它将为空。