我正在使用SimpleCursorAdapter,它需要一个名为“_id”的列。 我的表没有'_id',所以我做了一个定义与“AS _id”查询workarround,它的工作原理。我正在用getReadableDatabase()。rawQuery()。 我想知道是否有做同样的查询,但有方法的任何其他方式,如SQLiteQueryBuilder.queryANDROID SQLite SELECT x AS _id
感谢
我正在使用SimpleCursorAdapter,它需要一个名为“_id”的列。 我的表没有'_id',所以我做了一个定义与“AS _id”查询workarround,它的工作原理。我正在用getReadableDatabase()。rawQuery()。 我想知道是否有做同样的查询,但有方法的任何其他方式,如SQLiteQueryBuilder.queryANDROID SQLite SELECT x AS _id
感谢
您需要create a view in your SQLite数据库,将由一个别名使用_id原始表。然后你需要查询实际上是一个表的视图。
当直接查询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;