android - Android Pie 中的数据库导入问题?

标签 android android-database

我正在将预加载数据库与多个表一起使用,所有表中的表中都已存在数据。 我的错误 logcat 显示“没有这样的表:cake(代码 1 SQLITE_ERROR):,编译时:select * from cake at”,但实际上表及其数据已经存在。

我还检查了手机中复制的数据库,它在那里,但在代码中显示了上面的错误。

如何解决这个问题?

注意:此错误仅发生在 Google Pixel 手机中。

AndroidRuntime: FATAL EXCEPTION: main Process: com.ebizzapps.swadishtcookingrecipesinhindi, PID: 9060 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ebizzapps.swadishtcookingrecipesinhindi/com.ebizzapps.swadishtcookingrecipesinhindi.DetailRecipe}: android.database.sqlite.SQLiteException: no such table: cake (code 1 SQLITE_ERROR): , while compiling: select * from cake at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2913) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3048) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6669) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) Caused by: android.database.sqlite.SQLiteException: no such table: cake (code 1 SQLITE_ERROR): , while compiling: select * from cake at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method) at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:903) at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:514) at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588) at android.database.sqlite.SQLiteProgram.(SQLiteProgram.java:58) at android.database.sqlite.SQLiteQuery.(SQLiteQuery.java:37) at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:46) at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1408) at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1347) at com.ebizzapps.swadishtcookingrecipesinhindi.DBHelper.getDatas(DBHelper.java:162) at com.ebizzapps.swadishtcookingrecipesinhindi.DetailRecipe.onCreate(DetailRecipe.java:161) at android.app.Activity.performCreate(Activity.java:7136) at android.app.Activity.performCreate(Activity.java:7127) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1271) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2893) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3048) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6669) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

最佳答案

请参阅此 stackoverflow 帖子:Android P SQLite Pragma Log .

禁用 SQLiteOpenHelperonOpen 方法上的预写日志记录,如下所示:

@Override
public void onOpen(SQLiteDatabase db) {
    super.onOpen(db);
    db.disableWriteAheadLogging();
}

关于android - Android Pie 中的数据库导入问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52232143/

相关文章:

android - 如何在JAVA中的每个类中包含方法,就像php中的include函数一样?

android - Android Room 将预打包的数据库存储在缓存中是否正常?

android - 我可以将非主键字段作为房间中自动生成的值吗

android - Parcelable with arraylist<CustomClass> 将值从 Activity 传递到 fragment android

android - 在清扫选项卡中插入 ListView

Android 无法初始化 Visualizer 引擎,错误 : -4

android - 运行模拟器时 SQLiteConnection 数据库泄漏

android - Realm 和 Android 数据绑定(bind)

android - 缺少 logcat 消息