【发布时间】:2013-09-15 01:45:06
【问题描述】:
我正在使用以下使用布尔值的函数。
int recFound=0;
public Boolean CheckUser(String uName,String password)
{
try
{
statement=conn.createStatement();
resultSet=statement.executeQuery("select count(*) from UserMaster where username LIKE'"+uName+"' and password LIKE'"+password+"'");
if(resultSet.getRow()>0)
{
recFound=1;
}
else
{
recFound=0;
}
}
catch (Exception e) {
e.printStackTrace();
recFound=0;
}
if(recFound == 0)
{
return false;
}
else
{
return true;
}
}
我通过以下方式调用此函数:
boolean isValidUser=con.CheckUser(etLoginID.getText().toString(), etPassword.getText().toString());
if(isValidUser)
{
Intent i= new Intent(getApplicationContext(),Messages.class);
startActivity(i);
}
当我传递这个函数正确的值时,它不会产生recFound=1;
在最后一个条件下,虽然 recFound==0 它进入 else 条件并返回 true。
但是,当将此值分配给调用函数返回值时,它会分配 false。
意味着它使boolean isValidUser=con.CheckUser(etLoginID.getText().toString(), etPassword.getText().toString()); 为假。
isValidUser should get true in such case.
请帮帮我。
【问题讨论】:
-
resultSet 是一个游标......??