代码之家  ›  专栏  ›  技术社区  ›  Steffen

获取存储过程的SourceControl

  •  4
  • Steffen  · 技术社区  · 15 年前

    首先是技术方面的内容:

    我们正在使用VS 2008 Pro并运行MS SQL 2008服务器。对于sourcecontrol,我们使用subversion。

    我们真的希望将存储过程保存在Subversion中,这样我们就可以知道什么时候发生了更改,等等。

    然而,为了实现这一点,它必须是无缝的,否则开发人员将忘记在提交中包含过程。

    有什么好的解决办法吗?

    我敢肯定,我们不是唯一一家有这个问题的公司——)

    6 回复  |  直到 15 年前
        1
  •  2
  •   Eugene Niemand    15 年前

    我目前正在使用一个名为“红门SQL源代码控制”的免费工具来完成这项工作,它工作得很好,可以插入SSMS。这是一个包含更多信息的链接 http://www.red-gate.com/products/SQL_Source_Control/index.htm 我必须提到,这是目前在测试版,但与SVN和TFS很好的合作。

        2
  •  3
  •   Neil Knight    15 年前

    在Visual Studio 2008中,您可以创建一个数据库项目,该项目允许您将所有存储过程和任何其他SQL语句存储在一个nice项目中,然后该项目可以封装在Subversion中。

        3
  •  3
  •   systempuntoout    15 年前

    在我们的公司中,我们使用Team Foundation Server为VisualStudioTeam系统跟踪代码源和存储过程版本化;存储过程与任何其他代码源一样被处理。

    数据库不会自动同步到TFS;因此,对于每个新的SP,您需要:

    1. 创造它
    2. 将其添加到TFS中
    3. 登记入住
    4. 添加到数据库

    如果需要修改:

    1. 在tfs上签出
    2. 修改源
    3. 签入TFS
    4. 在数据库上修改

    当我们需要提交到生产数据库时,我们正式要求DBA将新的/修改过的存储过程同步到我们的生产数据库下载并应用来自TFS的最新版本。

    可能的问题场景:

    1. 懒惰的开发人员(像我一样)直接在SQL上修改sp 服务器和不对齐TFS上的代码
    2. 疯狂的开发人员(像我一样)忘记签入 最新的固定版本和DBA对齐 生产中的窃听器
        4
  •  1
  •   Martin Wickman    15 年前

    如果您采用的是敏捷方法,我建议您在 完成的,完成的 所以它成为了你过程中的自然组成部分。

        5
  •  0
  •   Anders Abel    15 年前

    我非常喜欢面向数据库专业人员的Visual Studio Team Edition,如果您有 Visual Studio Team Edition for Developers . 它将允许您在可以签入到源代码管理的脱机模型中使用数据库对象。然后,离线模型用于自动生成数据库的部署脚本。

    唯一的缺点是价格。

        6
  •  0
  •   Community CDub    7 年前

    我们有一个程序,当安装/升级程序时,它可以对任何需要的数据库版本进行更改。

    因此,为了部署任何SQL代码,必须将其包含在该程序中(在我们的例子中作为资源)。这将启用自动版本控制和向支持的VS源代码控制系统添加代码。

    more in-depth description of our system 在链环后面。