我一直在尝试从SQLite表获取ID。我不断得到id = 0。
该ID位于一个表中,该表也包含一行电子邮件。我需要获取与方法调用中提供的电子邮件匹配的ID。
我遇到了很多标题相似的问题,并尝试了许多不同的代码并获得了相同的结果。
我还在SQLite dabase浏览器中查看了SQLite表,因此我知道该表已填充。
public int getWorkerId(String emailId) {
int returnId = 0;
String where = EMAIL_ADDRESS + " = ' " + emailId + "'";
Cursor c = db.query(true, TABLE_NAME, null,
where, null, null, null, null, null);
if (c.moveToFirst()) {
returnId = c.getInt(c.getColumnIndex(ENTRY_ID));
}
c.close();
return returnId;
}
谢谢。
答案 0 :(得分:0)
正如 sticky bit 评论的那样,String where = EMAIL_ADDRESS + " = ' " + emailId + "'";
中第一个单引号和第二个双引号之间的空格是导致问题的原因。