我有一个SQLite查询:表名可以替换为'?'
rawQuery("select * from ? where ?=?", new String[] {
DBTABLE_PROFILE, KEY_PROFILE_ID, Integer.toString(profileID) });
但是Android给了我
E/AndroidRuntime(7323): Caused by: android.database.sqlite.SQLiteException:
near "?": syntax error (code 1): , while compiling: select * from ? where ?=?
我测试它?造成了问题,结果是第一个。如果我将其更改为
"select * from profile where ?=?"
它不是FC。
那么,表名可以代替'?'吗?
[编辑]:
有没有限制的变通实现rawQuery一样的功能。请参阅下面的答案。
谢谢你的提示,我没有知道这些限制是在sqlite声明中强加的。 –