比较源代码控制与SQL数据库

时间:2015-07-03 07:12:15

标签: c# database sql-server-2008 deployment tfs

我想创建一个工具来比较我的SQL开发数据库和源代码控制存储库,并创建一个部署脚本来同步它们。但我不知道如何继续。请提出任何建议

2 个答案:

答案 0 :(得分:1)

您有几个选项,第一个是付费的,您可以使用Redgate SQL Compare工具,或者您可以获得SSDT,创建数据库项目,添加您的代码并使用它来进行同步(使用sqlpackage或schema比较)。

我个人的偏好是SSDT,但RG支付的解决方案更简单。

答案 1 :(得分:0)

您是否拥有基于文件的源代码控制(如SVN,Git,Perforce)来管理数据库对象?

使用基于文件的版本控制存储库进行数据库代码部署会导致以下问题:

  • 如果开发人员将本地生成的工件复制到测试中 环境,下一个部署将覆盖此进程外 变化。
  • 开发人员可能忘记更新源控件存储库 在数据库中调试。

这些源代码控制并不是唯一的事实来源,因为任何人都可以登录数据库并进行更改而忘记将其应用到基于文件的版本控制的相关脚本中。

database需要的是基线感知分析。我建议你下载这份白皮书,以便对这个主题进行全面讨论。