Kra*_*tul 9 playframework playframework-evolutions playframework-2.2
我有一个环境,我正在使用多个数据库(A和B),每个数据库都有不同的演变集,因此完全成功.但是,总是首先应用一组数据库演进,B数据库的所有演进都在A数据库的任何演进之前应用.
我们正在做一些重大的重组,这导致一些跨数据库查询将数据库B移到未来,但由于数据库B的演变首先运行,数据库A的更改尚未发生,并且演变失败.
有没有办法改变/优先考虑使用不同演变集在多个数据库之间应用数据库演变的顺序?
不幸的是,我认为目前没有办法做到这一点。Play 只是迭代数据库并运行每个数据库的演化:
dbApi.databases().foreach(runEvolutions)
Run Code Online (Sandbox Code Playgroud)
数据库序列来自配置映射,因此您无法保证其读取顺序。
我认为最好的选择是分多个步骤运行演化,而不在每个步骤之间进行重大更改。迁移完成后,您将进行另一次改进来清理移动的列/表。
| 归档时间: |
|
| 查看次数: |
185 次 |
| 最近记录: |