我正在尝试从数据库中获取角色变量,我收到的错误是"未处理的异常类型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 :(得分:0)
Statement接口的executeQuery(String)方法具有SQLException的检查异常。
在您的代码段中,行
ResultSet resultset = statement.executeQuery("SELECT role FROM users WHERE elid = '" + elid + "'");
有一个未经处理的已检查异常。这就是您获取未处理的异常消息的原因。 无论何时调用此方法,都需要将其放在try-catch块中,或者在包含方法签名中添加抛出SQLException。