查询撤销没有结果代号为

时间:2016-11-04 06:18:04

标签: java sqlite codenameone

查询显示没有结果并且没有给出任何错误.control没有进入if块内部帮助我知道我在做什么错误? 我已经尝试了很多方法来获得结果,但都是徒劳的。当我在if语句之前尝试以下内容时

int column=cur.getColumnCount();
Row row=cur.getRow();
row.getString(0);

然后我得到了结果集关闭异常

Database db=null;
Cursor cur=null;
System.out.print("Printing from accounts class "+Email+Password);
String [] param={Email,Password};
System.out.print(param[0]+param[1]);

try{
  db=Display.getInstance().openOrCreate("UserAccountsDB.db");
 cur= db.executeQuery("select * from APPUserInfo WHERE Email=? AND Password=?",(String [])param);
int   columns=cur.getColumnCount();
if(columns > 0) {

   boolean next = cur.next();
    while(next) {
      Row currentRow = cur.getRow();
      String LoggedUserName=currentRow.getString(0);
      String LoggedUserPassword=currentRow.getString(1);
      System.out.println(LoggedUserName);
      next = cur.next();
     }

   }
    }catch(IOException ex)
    {
   Util.cleanup(db);
   Util.cleanup(cur);
   Log.e(ex);
     }

   finally{
     Util.cleanup(db);
    Util.cleanup(cur);

     }

1 个答案:

答案 0 :(得分:0)

正如@jobin在评论中所说,光标到结果会出现在第一个条目之前,所以直到你第一次调用next()时才能访问数据。

似乎表是空的,这意味着DB中没有用户匹配电子邮件/密码。尝试删除email / password子句以获取要验证的所有用户的列表。