0

因此,我正在努力为我的所有数据库更改制作 SQL 脚本,以便它们可以提交到源代码控制,但是 SQL 是否应该充满差异?

例如,如果我的初始提交有一个“创建表”并且以后的更新需要从该表中删除一个列,我是修改“创建”语句使其不包含该列还是保持不变并添加“更改表”语句?

我想如果它的差异,就有可能在任何状态下获取数据库并将其更新到以后的状态。而使用完整的,总是必须从一个新的数据库开始。

4

1 回答 1

1

两个都。每个 DB 对象都有单独的“创建”脚本。这可用于从头开始创建数据库。此外,这使得提交更改更容易在视觉上区分 - 除了阅读(有时是冗长的)更改脚本之外,您还可以看到对象创建脚本的更改。

还要编写差异 SQL 脚本,以易于排序和按顺序应用的方式命名。这使您可以将 X 点的 DB 带到当前模式。

于 2012-10-17T00:10:07.760 回答