我遇到了這個查詢似乎並不工作的麻煩。 找不出來。這種方法有問題嗎? 我之前手動輸入了一個帳戶,並檢查數據庫不是空的。 遊標getCount方法系統地返回0。SQLite Android查詢
private static final int VERSION_BDD = 1;
private static final String NOM_BDD = "account.db";
private static final String TABLE_ACCOUNT = "table_account";
private static final String COL_EMAIL = "Email";
private static final String COL_PASSWORD = "Password";
...
...
public Account getAccountWithEmail(String email){
Cursor c = bdd.rawQuery("select * from table_account where Email = '" + email + "'", null);
return cursorToAccount(c);
}
private Account cursorToAccount(Cursor c){
if (c.getCount() == 0){
return null;
}
else{
c.moveToFirst();
Account account = new Account();
account.setEmail(c.getString(NUM_COL_EMAIL));
account.setPassword(c.getString(NUM_COL_PASSWORD));
c.close();
return account;
}
}
閱讀有關rawQuery方法工作原理的文檔。你會在那裏找到你的答案。 –
提供cursorToAccount方法。 –
完成,但我認爲問題真的來自查詢 – Krypte