我正在使用需要名为“_id”的collumn的SimpleCursorAdapter。 我的表没有'_id',所以我做了一个用“AS _id”定义查询的工作,它可以工作。我是用 getReadableDatabase()。rawQuery()来做的。 我想知道是否有其他方法可以执行相同的查询但使用方法,例如SQLiteQueryBuilder.query
感谢
答案 0 :(得分:1)
您需要create a view in your SQLite数据库,它将通过别名使用原始表中的_id。然后你需要查询实际上是一个表的视图。
答案 1 :(得分:1)
直接查询sqlite时可能会这样,但将col as _id
传递给ContentResolver.query()
会引发java.lang.IllegalArgumentException: Invalid column col as _id
。
作为替代方案,我建议在sqlite数据库中创建view
。
CREATE VIEW view1 AS SELECT pkid AS _id, ... FROM your_table;