public void datuieguve(){
Scanner ievads = new Scanner(System.in);
String lietotIn = ievads.next();
// String paroleIn = ievads.next();
try {
quer = savien.createStatement();
String kverijs = "select lietotajvards from lietotaji where lietotajvards = '" +lietotIn+ "';";
rezult = quer.executeQuery(kverijs);
System.out.println(rezult.next());
String lietotajvards = rezult.getString("lietotajvards");
if (rezult.equals(lietotIn))
{
System.out.println("Yup");
}
else
{
System.out.println("Nope");
}
} catch(Exception ex) {
System.out.println("Kluuda: " +ex);
}
ievads.close();
}
大家好,我正在尝试创建一个代码,用于输入用户并将其与mysql数据库值进行比较。问题是,它不起作用而且我被困住了。如果有人能弄清楚我的代码有什么问题并给我一些提示或东西,我会很感激,因为我不能:)
我认为我找到了连接部分,但这种比较让我疯狂。
答案 0 :(得分:0)
对您的代码进行以下更改:
while(rezult.next()){
String lietotajvards = rezult.getString("lietotajvards");
if(lietotajvards.equals(lietotIn))
{
System.out.println("Yup");
}
...
}
编辑: 使用预准备语句而不是create语句的好习惯。
<强>实施例强>
Connection db = con.getConnection();
try {
PreparedStatement ps = ...;
try {
ResultSet rs = ...
try {
...
}
finally {
rs.close();
}
}
finally {
ps.close();
}
}
finally {
db.close();
}