数据库脚本按发布包装

时间:2011-12-08 12:08:51

标签: sql svn scripting packaging

我正在考虑针对我们的解决方案的数据库打包策略。基本上,最常见的解决方案似乎是维护一个基线脚本包和一系列DDL alter脚本。

示例:

  1. 在版本0中运行一个或多个代表数据库的脚本。
  2. 您为模型中的更改运行了一系列更改脚本。
  3. 我的问题涉及第2阶段: 几乎每个人都谈到每次更改都要运行脚本。但是,如果我们每个版本/版本都有一个脚本包,我想知道是否有任何特定的缺点?

    1. 您运行基线脚本/ s
    2. 对于每个版本,您都有一个脚本,表示该特定版本中包含的DDL更改。
    3. 非常感谢任何意见。

      最诚挚的问候,

      Baubak

      我希望

3 个答案:

答案 0 :(得分:2)

您可以随意为每个版本运行许多脚本,但您应该接受他们的订单,最好将所有相关更改封装到单个文件中。

开发脚本可能与发行脚本不同。

答案 1 :(得分:1)

您可以这样做,但您必须注意清楚程序包中脚本的运行顺序。

e.G。如果更改视图以包含新列,则在更改视图之前该列必须存在。

我这样做(让文件以必须被调用的订单号开头)

答案 2 :(得分:0)

谢谢你的回答。经过一些讨论和用例研究后,我们得到了每个版本的小更新脚本解决方案,而不是大型发布脚本。这是因为我们不希望一直运行所有更改脚本,并且通常作为开发人员,您只想更新工作数据库以与发布分支同步。

我非常感谢你的建议和建议。