2016-11-04 13 views
2

エラーが発生していないことを示すクエリ.control ifブロック内に入力しないと、私は間違いがどこで起こっているのか教えてください。 私は結果を得るために多くの方法を試みましたが、すべてが無駄でした。私は、if文検索結果のコードネームは1つもありません

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

する前に、以下を試みたとき、私は@jobinが結果にカーソルがするまでそう最初のエントリの前に表示されるコメントで言ったようにResultSetは例外

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); 

    } 
+0

dbを直接入力して結果を得ることはできますか? –

+0

"boolean next = cur.next();"という行を入力してみてください。 before "int columns = cur.getColumnCount();" – Jobin

+0

columnCount()は6を返しますが、行 "boolean next = cur.next()"でfalseを返し、whileループに入りませんwhileループの前に次の例外が発生しました。 – Yasir

答えて

0

を閉じましたあなた最初にデータにアクセスできない場合は、next()が呼び出されます。

テーブルが空であるため、電子メール/パスワードに一致するDBにユーザーがいないようです。電子メール/パスワード句を削除して、確認するすべてのユーザーのリストを取得してください。

+0

うん@私のテーブルの列にエラーがある – Yasir

関連する問題