2017-06-02 10 views
0

私はログインビューを持っているAndroidアプリケーションを開発していますが、ボタンの下に警告テキストを書き込むためにResultSetが一致しないかどうかを確認したいと思います。しかし、私が聞いたように、ResultSetはnull値で返されることはありません。だから私は何を使うべきですか?ここに私の短いコードは次のとおりです。ResultSetが一致なしで返されたことを確認する方法はありますか?

loginButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      ArrayList<String> users = new ArrayList<String>(); 
      final String getUser = "SELECT username FROM userList WHERE username=?"; 
      try { 
       pst = conn.prepareStatement(getUser); 
       pst.setString(1, String.valueOf(txtUsername)); 
       rs = pst.executeQuery(); 
       while (rs.next()) { 
        if(rs == null) { //change this line 
        txtAlert.setText("ERROR: No match!"); 
        } 
        else { 
         users.add(rs.getString("username")); 
        } 
       } 
       final String getUserName = users.get(1); 
      } catch (SQLException e) { 
       e.printStackTrace(); 
      } 
     } 
    }); 
+0

を追加しましたかどうか確認することができます。 .next()を呼び出した後にnullをチェックする意味がない – MatPag

答えて

1

あなたは、RSがnullの場合、あなたのアプリがしばらくラインでクラッシュします

while (rs.next()) { 
    users.add(rs.getString("username")); 
} 

if (users.isEmpty()) { 
    // not found! 
} 
関連する問題