我们正在为我们的项目设置Flyway,并且正在考虑是否要使用Flyway迁移或使用sql控制台或某些引导脚本手动为数据播种。
我们担心的是,如果我们在Flyway中添加种子数据,这意味着也需要在Flyway中对这些数据进行进一步的修改。而且我们可能需要使用"where field = x"
或某些其他条件,这些条件在某个时间点可能已经无效,因为应用程序可以更改数据。那会是个问题。
在他们的文档中,我看不到任何建议禁止播种数据的建议。
我只是想知道使用Flyway之类的迁移工具播种数据是否是个好主意。
答案 0 :(得分:1)
最合适的通常是参考数据,答案是肯定的。对于用户可修改的数据,这取决于。如果最初在所有环境中都需要此数据,那么答案也可能是。归根结底,如果后来某个条件在某个环境中不再满足where条件,则可能还意味着您无论如何都不想覆盖该数据。或者,您需要为所有行分配固定的合成ID和不可变ID,以便以后即使在数据更改的情况下也始终可以引用。