【问题标题】:prepopulating a database not working in android预填充数据库在android中不起作用
【发布时间】:2020-07-14 10:48:24
【问题描述】:

我需要使用预填充数据库表

Room.databaseBuilder(appContext, AppDatabase.class, "Sample.db")
    .createFromAsset("database/myapp.db")
    .build()

为此,我从 DB Browser for SQLite 创建了一个 myapp.db

已将文件保存在 assets/database 文件夹中,但它运行成功且没有任何错误,并且没有数据可脱机使用。 为什么它没有给出任何错误?我尝试在函数中更改资产路径,但仍然没有任何错误或任何本地数据库出现

当我在 DB Browser for SQLite 中打开 .db 文件时,它可以正确打开 请帮忙

【问题讨论】:

  • createFromAsset (String databaseFilePath) databaseFilePath 不是sqlScriptPath
  • 什么是databasefilepath,如何制作这个文件,请帮忙
  • 什么是 databasefilepath 它是在你的 mac/PC/任何东西上创建的 sqlite 数据库文件的路径,并作为资产添加到你的项目中
  • 我正在使用 DB Browser for sqlite,在这里将其提供选项导出为 json、csv 或 sql 文件而不是 .db 文件
  • 正如@Selvin 提到的。您应该传递您的 .db 文件,其中包含带有一些行的方案。在 SQLite 的 DB 浏览器中,如果您创建新数据库,您将找到 .db 扩展名。我以前用过很多次。

标签: java android android-room


【解决方案1】:

我能够通过重新安装应用程序来解决上述问题,它还返回一个数据库实例,所以我使用不同的实例来查询数据库。

【讨论】:

    猜你喜欢
    • 2012-03-04
    • 2021-01-26
    • 1970-01-01
    • 2018-12-10
    • 2011-01-25
    • 2011-05-10
    相关资源
    最近更新 更多