调用database.rawQuery时的Android SQLiteMisuseException
Posted
技术标签:
【中文标题】调用database.rawQuery时的Android SQLiteMisuseException【英文标题】:Android SQLiteMisuseException when calling database.rawQuery 【发布时间】:2012-01-23 18:38:34 【问题描述】:我在 android 应用程序中使用 SQLite 数据库,有时在调用 database.rawQuery(String sql, String[] selectionArgs) 时会收到 SQLiteMisuseException。 这很奇怪,因为这个异常是随机出现的,我真的不知道为什么。
有更多关于异常的信息:
android.database.sqlite.SQLiteMisuseException: library routine called out of sequence: , while compiling: SELECT PromoGuid, PromoViewCount FROM TablePromoView
at android.database.sqlite.SQLiteCompiledSql.native_compile(Native Method)
at android.database.sqlite.SQLiteCompiledSql.compile(SQLiteCompiledSql.java:92)
at android.database.sqlite.SQLiteCompiledSql.<init>(SQLiteCompiledSql.java:65)
at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:83)
at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:49)
at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:42)
at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1356)
at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1324)
at com.my.application....
有人有这个错误吗?你能帮我解决吗?
提前致谢,
PS:对不起我的英语不好,我来自比利时
【问题讨论】:
你能提供导致问题的代码吗? 你的问题解决了吗? 【参考方案1】:check this link。确保在开始其他活动等之前关闭所有打开的数据库连接/游标。
【讨论】:
以上是关于调用database.rawQuery时的Android SQLiteMisuseException的主要内容,如果未能解决你的问题,请参考以下文章
如何在 android 上使用 sqlcipher 读取以前在 pc 上创建的加密数据库?