database-migration - 使用 Flyway 等数据库迁移工具播种数据是一种好习惯吗?
问题描述
我们正在为我们的项目设置 Flyway,我们正在重新考虑是否要使用 Flyway 迁移或手动使用 sql 控制台或一些引导脚本来播种数据。
我们担心的是,如果我们在 Flyway 中添加种子数据,这意味着对这些数据的进一步修改也需要在 Flyway 中。而且我们可能需要使用"where field = x"
在某个时间点可能已经无效的其他条件,因为应用程序可以更改数据。这将是有问题的。
在他们的文档中,我看不到任何建议不要播种数据的内容。
我只是想知道使用 Flyway 等迁移工具播种数据是否是个好主意。
解决方案
最适合的通常是参考数据,答案是肯定的。对于用户可修改的数据,这取决于。如果最初在所有环境中都需要这些数据,那么答案可能也是肯定的。归根结底,如果 where 条件在以后的某个环境中不再成立,这可能也意味着您无论如何都不想覆盖该数据。或者您需要为所有行分配固定的合成和不可变 id,以便您以后可以随时参考,即使面对数据更改也是如此。
推荐阅读
- android - android中的活动最小化
- wordpress - 按 2 个自定义字段排序。一个字段有时是空的
- colors - 常用于暗物质模拟的颜色图
- azure-devops - 在将任务标记为“完成”之前,我是否需要将任务的剩余小时数更改为零?
- azure - 我可以使用同一个 Redis 实例来存储来自多个应用程序的会话吗?
- python - 替换数据框中的单个字符?
- javascript - 为什么我从 post request express 收到 undefined
- python - 我怎样才能阻止错误的行进入霍夫空间
- reactjs - 将承诺的返回值分配给反应中的外部变量
- powerbi - DAX 表达式的性能问题