这里的SQLite文档http://web.utk.edu/~jplyon/sqlite/SQLite_optimization_FAQ.html#pragmas看起来很有趣。有没有办法尝试Android中的建议?
答案 0 :(得分:2)
PRAGMA语句是SQLite特有的SQL扩展,用于修改SQLite库的操作或查询SQLite库中的内部(非表)数据。使用与其他SQLite命令相同的接口(例如SELECT,INSERT)
发出PRAGMA语句
因此,我希望execSQL()
上的SQLiteDatabase
应该与不返回结果集的PRAGMA
一起使用。
如果PRAGMA
影响SQLite语句的编译,请尝试使用compileStatement()
SQLiteDatabase
并查看是否有效。我希望在SQLite C API中映射到sqlite3_prepare()
,但我不确定。
答案 1 :(得分:1)
我不知道在Android中如何使用 PRAGMA 时可能不允许绑定参数所以我要在其中执行包含参数的整个语句,如下例所示:
"PRAGMA main.locking_mode = exclusive";
也许在Android中,它只能与execSQL()
方法一起使用。