不确定sqlite是否真正支持此功能,是否是Room db bug或我做错了什么,但是在迁移过程中使用预定义数据插入行实际上不起作用:
以Persistence Migration Sample为例:
在MIGRATION_2_3
的UsersDatabase中,将以下行添加到迁移中:
database.execSQL("INSERT INTO Users (userid, username, last_update) VALUES (456, 'asdf', 123), (999, '3524', 4567);");
在MigrationTest
中,我添加了更多断言:
List<User> allUsers = usersDatabase.userDao().getAllUsers();
Assert.assertEquals(4, allUsers.size());
测试失败,并且未创建行,但是迁移一直运行到完成!我需要这项工作,有人能做到吗,或者有什么好的选择吗?