首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >execSQL SQLiteException near "?“

execSQL SQLiteException near "?“
EN

Stack Overflow用户
提问于 2010-02-17 13:01:26
回答 2查看 3K关注 0票数 3

为什么这个不起作用??

db.execSQL("INSERT INTO PARTIES (PARTY_NAME, PARTY_COUNT) SELECT DISTINCT(PARTY), COUNT(PARTY) FROM ? WHERE (Year=?) GROUP BY PARTY ORDER BY PARTY ASC", new Object[] { "Election", "2004" });

它在rawQuery中完美工作!!

EN

回答 2

Stack Overflow用户

发布于 2010-02-17 13:14:18

我不知道你指的是什么"rawQuery“(网址)。我不知道有哪个SQL引擎允许对元数据进行参数替换,比如表名和列名--在参数替换中只允许值,而不允许名称。SQLite也不例外。

票数 2
EN

Stack Overflow用户

发布于 2012-05-17 01:35:12

也许它不应该这样?

来自文档的copypaste:

代码语言:javascript
复制
public void execSQL (String sql, Object[] bindArgs)

执行不是INSERT语句的SELECT/INSERT/UPDATE/DELETE.的单个SQL语句,请改用下列任一语句。

  • insert(String, String, ContentValues)
  • insertOrThrow(String, String, ContentValues)
  • insertWithOnConflict(String, String, ContentValues,int)

http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2278433

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档