2017-07-18 5 views
0

としてエラーを取得して、データベースから値を取得することができません、私はエラーを取得しています「未処理の例外型SQL例外」「未処理の例外型SQL例外」私はデータベースからロール変数を取得しようとしています

static int indexValue=0; 
public static int getRole(IndexBean w){ 
    String elid= IndexBean.getId(); 
      conn = ConnectionProvider.getCon(); 

      Statement statement = conn.createStatement(); 
      ResultSet resultset = statement.executeQuery("SELECT role FROM users WHERE elid = '" + elid + "'") ; 
      String role = resultset.getString(1); 
      if(role=="ADMIN"){ 
       indexValue = 1; 
      }else if(role=="analyst"){ 
       indexValue = 2; 
      } 
      conn.close(); 
    return indexValue; 
} 
こと

+0

関連のない、しかし: '役割== "ADMIN"'あなたはそれがないと思う何をしていません。 –

答えて

0

StatementインタフェースのexecuteQuery(String)メソッドには、SQLExceptionのチェック例外があります。スニペットで

、ライン

ResultSet resultset = statement.executeQuery("SELECT role FROM users WHERE elid = '" + elid + "'"); 

が処理されないチェック例外があります。このため、未処理の例外メッセージが表示されます。 このメソッドを呼び出すときは、try-catchブロックに入れるか、または格納しているメソッドのシグネチャにthrows SQLExceptionを追加する必要があります。

See Java Sql Statement API here.

+0

はい、SQLExceptionをスローすると問題が解決しました。 ありがとう:) – saidu941

関連する問題