Android 使用SQLite中的“\u id”从表中选择
我想使用id作为选择,从sqlite数据库中选择特定的行。 在我的数据库中,id被称为_id。我想使用以下函数,参数是我想选择并保存到光标中的行的id。 DATABASE_TABLE_Bevertschafter是我的表的名称Android 使用SQLite中的“\u id”从表中选择,android,sqlite,where-clause,android-cursor,Android,Sqlite,Where Clause,Android Cursor,我想使用id作为选择,从sqlite数据库中选择特定的行。 在我的数据库中,id被称为_id。我想使用以下函数,参数是我想选择并保存到光标中的行的id。 DATABASE_TABLE_Bevertschafter是我的表的名称 public Cursor createBewirtschafterIDCursor(int id) { return db.query(DATABASE_TABLE_Bewirtschafter, null, "_id = " + id,
public Cursor createBewirtschafterIDCursor(int id) {
return db.query(DATABASE_TABLE_Bewirtschafter, null, "_id = " + id,
null, null, null, null);
}
不幸的是,这不起作用,我得到一个空指针异常。
这项工作:
public Cursor createBewirtschafterListViewCursor(String like) {
return db.query(DATABASE_TABLE_Bewirtschafter, null, "gewName LIKE '%" + like + "%'",
null, null, null, null);
}
您的db变量设置为什么?从您展示的代码判断,我猜这正是引发NullPointerException的原因。是的,因为您在查询中传递的是null in列参数
db.query(DATABASE_TABLE_Bewirtschafter, null, "_id = " + id,
null, null, null, null);
然而,您应该传递一个字符串数组,其中包含不同列的名称。。参考请检查
db=context.openOrCreateDatabaseDATABASE\u名称,SQLiteDatabase.CREATE\u如果需要,则为null;谢谢在“我的编辑”中,您可以看到我的另一条语句,该语句工作正常,列也为空。为什么?我发现了我的失败。我忘了打开数据库。如果答案对你有帮助,别忘了将其标记为已接受。