0

flyway 为我节省了做基本事情的时间给我留下了深刻的印象:从头开始创建模式,并将其更新到特定版本。

每当发生任何不寻常的事情时,我都会感到有些沮丧:我有一个特定于客户的视图,需要应用于某些模式;我有一个分支版本,其中包含一些基本版本没有的脚本;我想在多个模式上运行相同的 flyway 安装。

在所有这些情况下,我发现自己手动移动 .sql 文件以尝试做不同的事情;这很容易出错,并且flyway对模式历史中的任何变化都没有任何宽恕。(这让我对使用 flyway 进行生产模式有点不安,但这是另一个话题)。

似乎数据库版本控制终于在 2000 年左右赶上了代码版本控制:您可以进行一行更改,而且效果很好。但就像 DVCS 扩展了您可以通过实验和分支做的事情一样,数据库版本控制也需要以这种方式移动。

这是flyway正在考虑,正在努力还是有办法做到我想念的事情?

4

1 回答 1

1

您不能只维护一个视图,而是为每个客户实现功能切换吗?这样,您可以维护一个模式和所有自定义视图,但将逻辑分解为“功能”。然后在属性文件或数据库表中查找功能的切换 (true/false) 以确定如何加入或构建 SQL。

于 2013-09-16T22:24:16.987 回答