gpt4 book ai didi

android - 生成 Android 房间迁移的最佳方法是什么?

转载 作者:行者123 更新时间:2023-11-30 00:02:22 25 4
gpt4 key购买 nike

请注意,我有 .NET 背景,熟悉 Entity Framework。

所以在 EF 迁移中,实际的迁移是为你生成的。基本上,您在 POCO 对象中指定您想要的更改。当您添加一个新的迁移时,它会在数据库和 POCO 对象之间进行比较并生成一个迁移脚本。您几乎不需要看它。

所以使用 Android Room,我发现我必须自己手工制作这些迁移。并且有一些规则意味着系统崩溃,除非您手工制作的迁移将模式完全置于 Room 认为它应该基于 POJO 对象的状态。

对我来说,这似乎是一项可以自动化的繁琐且冒险的任务(就像 EF 迁移已经做的那样)。所以我的问题是,是否有工具或东西可以自动执行这些迁移?如果没有,关于如何安全或高效地执行这些迁移的一些准则是什么?

最佳答案

我不确定目前是否存在专门针对 Room 的此类工具,但我几乎不怀疑,因为 Room 的稳定版本仅在几个月前发布。

您可以生成的一件小事是用于创建表的 SQL 语句。只需添加:

javaCompileOptions {
annotationProcessorOptions {
arguments = ["room.schemaLocation":
"$projectDir/schemas".toString()]
}
}

到你的 build.gradle 中的 android/defaultConfig 和一个 JSON with complete schemas will be generated .

要安全地执行这些迁移,您可以对它们进行全面测试 - 对此进行了很好的描述 here

关于效率,我建议创建直接迁移,如 Migration(1, 4)

关于android - 生成 Android 房间迁移的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49691832/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com