如何从我的设备中提取房间数据库?
How do I pull a room db from my device?
我正在尝试使用来自 Android 的新房间数据库助手。
所以我已经为条目和 DAO 以及数据库本身创建了所有 类。
然后我在我的 MainActivity 中创建了一个数据库实例:
mDb = myDatabase.getDatabase(getApplication());
但是 "physical" db 文件是什么时候在 Android 设备上创建的?
我想做的是将该文件复制到我的 PC 并在 SQLITE-mnager 中打开它,以便以更舒适的方式填充空数据库。
但我不知道在哪里可以找到它,或者我的应用程序是否已经创建了该文件(该应用程序已经生成了 JSON 模式文件,所以我希望数据库也存在)。
那么我怎么知道它是否存在以及如何将它从我的设备拉到我的电脑上?
1) 它是在您第一次 运行 任何类型的查询时创建的,因此例如从您的 DAO 中调用带有 @Query
、@Insert
或其他注释的任何方法
2) 打开 Device File Explorer
(您会在 Android Studio 的右侧下方找到它)然后导航至:data/data/YOUR_PACKAGE_NAME/databases/
您的数据库文件将被存储的位置,使用您在 Room.databaseBuilder
方法中指定的名称。从这个地方您可以右键单击该文件并将其复制到您的 PC
我正在尝试使用来自 Android 的新房间数据库助手。
所以我已经为条目和 DAO 以及数据库本身创建了所有 类。
然后我在我的 MainActivity 中创建了一个数据库实例:
mDb = myDatabase.getDatabase(getApplication());
但是 "physical" db 文件是什么时候在 Android 设备上创建的?
我想做的是将该文件复制到我的 PC 并在 SQLITE-mnager 中打开它,以便以更舒适的方式填充空数据库。
但我不知道在哪里可以找到它,或者我的应用程序是否已经创建了该文件(该应用程序已经生成了 JSON 模式文件,所以我希望数据库也存在)。
那么我怎么知道它是否存在以及如何将它从我的设备拉到我的电脑上?
1) 它是在您第一次 运行 任何类型的查询时创建的,因此例如从您的 DAO 中调用带有 @Query
、@Insert
或其他注释的任何方法
2) 打开 Device File Explorer
(您会在 Android Studio 的右侧下方找到它)然后导航至:data/data/YOUR_PACKAGE_NAME/databases/
您的数据库文件将被存储的位置,使用您在 Room.databaseBuilder
方法中指定的名称。从这个地方您可以右键单击该文件并将其复制到您的 PC