SQLiteException:仅在摩托罗拉加上没有这样的表? [英] SQLiteException: no such table only on Motorola Plus?

查看:122
本文介绍了SQLiteException:仅在摩托罗拉加上没有这样的表?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们有一个摩托罗拉PLUS运行我们的应用程序用户,当我们尝试从sqlite的阅读分贝他得到下面的异常。

我们已经尝试完全删除的应用程序和数据库并重新安装。

我们也试图查询使用简单rawquery数据库,但没有成功。

任何建议,欢迎!

 了java.lang.RuntimeException:执行doInBackground发生错误()
    在android.support.v4.b.r.done(的SourceFile:137)
    在java.util.concurrent.FutureTask中$ Sync.innerSetException(FutureTask.java:274)
    在java.util.concurrent.FutureTask.setException(FutureTask.java:125)
    在java.util.concurrent.FutureTask中$ Sync.innerRun(FutureTask.java:308)
    在java.util.concurrent.FutureTask.run(FutureTask.java:138)
    在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
    在java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:581)
    在java.lang.Thread.run(Thread.java:1019)
android.database.sqlite.SQLiteException:引起没有这样的表:记录:,编译时:选择_id,姓名,从的IsBackground记录ORDER BY ASC _id
        在android.database.sqlite.SQLiteCompiledSql.native_compile(本机方法)
        在android.database.sqlite.SQLiteCompiledSql.compile(SQLiteCompiledSql.java:92)
        在android.database.sqlite.SQLiteCompiledSql<&初始化GT;(SQLiteCompiledSql.java:65)
        在android.database.sqlite.SQLiteProgram<&初始化GT;(SQLiteProgram.java:83)
        在android.database.sqlite.SQLiteQuery<&初始化GT;(SQLiteQuery.java:49)
        在android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:42)
        在android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1365)
        在android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:330​​)
        在android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:280)
        在com.voicepro.db.RecordsContentProvider.query(的SourceFile:289)
        在android.content.ContentProvider $ Transport.query(ContentProvider.java:187)
        在android.content.ContentResolver.query(ContentResolver.java:266)
        在android.support.v4.b.f.loadInBackground(的SourceFile:49)
        在android.support.v4.b.f.loadInBackground(的SourceFile:35)
        在android.support.v4.b.a.onLoadInBackground(的SourceFile:240)
        在android.support.v4.b.b.doInBackground(的SourceFile:51)
        在android.support.v4.b.b.doInBackground(的SourceFile:40)
        在android.support.v4.b.q.call(的SourceFile:123)
        在java.util.concurrent.FutureTask中$ Sync.innerRun(FutureTask.java:306)
        ... 4个
android.database.sqlite.SQLiteException:没有这样的表:记录:,编译时:选择_id,姓名,从的IsBackground记录ORDER BY ASC _id
        在android.database.sqlite.SQLiteCompiledSql.native_compile(本机方法)
        在android.database.sqlite.SQLiteCompiledSql.compile(SQLiteCompiledSql.java:92)
        在android.database.sqlite.SQLiteCompiledSql<&初始化GT;(SQLiteCompiledSql.java:65)
        在android.database.sqlite.SQLiteProgram<&初始化GT;(SQLiteProgram.java:83)
        在android.database.sqlite.SQLiteQuery<&初始化GT;(SQLiteQuery.java:49)
        在android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:42)
        在android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1365)
        在android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:330​​)
        在android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:280)
        在com.voicepro.db.RecordsContentProvider.query(的SourceFile:289)
        在android.content.ContentProvider $ Transport.query(ContentProvider.java:187)
        在android.content.ContentResolver.query(ContentResolver.java:266)
        在android.support.v4.b.f.loadInBackground(的SourceFile:49)
        在android.support.v4.b.f.loadInBackground(的SourceFile:35)
        在android.support.v4.b.a.onLoadInBackground(的SourceFile:240)
        在android.support.v4.b.b.doInBackground(的SourceFile:51)
        在android.support.v4.b.b.doInBackground(的SourceFile:40)
        在android.support.v4.b.q.call(的SourceFile:123)
        在java.util.concurrent.FutureTask中$ Sync.innerRun(FutureTask.java:306)
        在java.util.concurrent.FutureTask.run(FutureTask.java:138)
        在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
        在java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:581)
        在java.lang.Thread.run(Thread.java:1019)


解决方案

我有同样的问题。我的猜测是,当你说 - 但问题是不是SQLite的版本,它不是在所有的设备发生,这个问题可能是因为在你的code一些地方,你删除的表(在我的情况我删除了缓存Web客户端)。走在你的code和重新考试了。

请参阅:
<一href=\"http://stackoverflow.com/questions/13013769/strange-sqliteexception-not-in-all-devices\">Strange SQLiteException并不是在所有设备

We have a user that run our app on a Motorola PLUS, and when we try to read from a sqlite db he get the following exception.

We have already tried to delete completely the app and the database and reinstall it.

We also tried to query the database using a simple rawquery, but no success.

Any suggestion is welcome!

java.lang.RuntimeException: An error occured while executing doInBackground()
    at android.support.v4.b.r.done(SourceFile:137)
    at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:274)
    at java.util.concurrent.FutureTask.setException(FutureTask.java:125)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:308)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
    at java.lang.Thread.run(Thread.java:1019)
Caused by: android.database.sqlite.SQLiteException: no such table: records: , while compiling: SELECT _id, name, isbackground FROM records ORDER BY _id ASC
        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:1365)
        at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:330)
        at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:280)
        at com.voicepro.db.RecordsContentProvider.query(SourceFile:289)
        at android.content.ContentProvider$Transport.query(ContentProvider.java:187)
        at android.content.ContentResolver.query(ContentResolver.java:266)
        at android.support.v4.b.f.loadInBackground(SourceFile:49)
        at android.support.v4.b.f.loadInBackground(SourceFile:35)
        at android.support.v4.b.a.onLoadInBackground(SourceFile:240)
        at android.support.v4.b.b.doInBackground(SourceFile:51)
        at android.support.v4.b.b.doInBackground(SourceFile:40)
        at android.support.v4.b.q.call(SourceFile:123)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:306)
        ... 4 more
android.database.sqlite.SQLiteException: no such table: records: , while compiling: SELECT _id, name, isbackground FROM records ORDER BY _id ASC
        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:1365)
        at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:330)
        at android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:280)
        at com.voicepro.db.RecordsContentProvider.query(SourceFile:289)
        at android.content.ContentProvider$Transport.query(ContentProvider.java:187)
        at android.content.ContentResolver.query(ContentResolver.java:266)
        at android.support.v4.b.f.loadInBackground(SourceFile:49)
        at android.support.v4.b.f.loadInBackground(SourceFile:35)
        at android.support.v4.b.a.onLoadInBackground(SourceFile:240)
        at android.support.v4.b.b.doInBackground(SourceFile:51)
        at android.support.v4.b.b.doInBackground(SourceFile:40)
        at android.support.v4.b.q.call(SourceFile:123)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:306)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
        at java.lang.Thread.run(Thread.java:1019)

解决方案

i had the same problem. my guess is that it doesn't happen on all devices as you said- but the problem is not the sqlite version, the problem is probably because in some place in your code you deleted the table (in my case i deleted the cache for a web client). go over your code and re-exam it.

see: Strange SQLiteException not in all devices

这篇关于SQLiteException:仅在摩托罗拉加上没有这样的表?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆