唉.... 看看java api doc 再说吧executeQuery 后, resultset 一定不是null的要用
if (rst.next()) {
  flag = true;
}else{
  flag = false;
}

解决方案 »

  1.   

    statement.executeQuery(strsql)返回的是ResultSet对象,没有查得符合条件的结果时,并不意味着返回的是null,此时rst并不是null,只是一个空的结果集而已,你用ResultSet rst =null;然后用
    if (rst != null)
    可能会正确判断,
    而在查询后,判断查询有无结果时得用
    if(rst.next())
    来判断.
      

  2.   

    executeQuerypublic ResultSet executeQuery(String sql)
                           throws SQLException
    Executes the given SQL statement, which returns a single ResultSet object.Parameters:sql - an SQL statement to be sent to the database, typically a static SQL SELECT statementReturns:a ResultSet object that contains the data produced by the given query; never null有没看到最好一段话never null
      

  3.   

    其它的做法可以参照 xiaofenguser(风雨) 的
      

  4.   

    <jsp核心技术>P127:
    executeUpdate()方法返回一个int,这个int可能是0,表示sql语句部返回任何数据,或者