什么是Sql Server版本控制的最佳工具

时间:2010-04-27 05:26:42

标签: sql-server-2008 version-control visual-studio-2010

在阅读this帖子以及使用Team Edition for Database Professionals的建议后,我想知道SQL server 2008 / Visual stuio 2010 ultimate有没有相同的内容。

我正在寻找工具需要做杰夫在his文章中提到的所有事情:

  • 创建测试数据。
  • 架构比较。
  • 数据比较。
  • 数据库单元测试。
  • 重构。
  • 集成T-SQL编辑器,IDE中的第一类语言构造,就像C#和VB.NET一样。

有关本文的详细信息,请参阅:http://www.codinghorror.com/blog/2006/12/is-your-database-under-version-control.html


Visual Studio 2010(和2008)似乎对此问题采用了非常强大的方法。我不知道它是否是最好的选择,但它绝对是好的。

以下是Getting StartedWalkthrouge,了解如何开始使用它。

4 个答案:

答案 0 :(得分:6)

VS 2010 Premium和Ultimate内置了(扩展数据库开发链接)

http://www.microsoft.com/visualstudio/en-us/products

简而言之,您的数据库项目将被检入源代码管理,并从数据库项目部署到生产环境。

如果您正在寻找在VS2010之外使用的东西,那么redgate有一个测试版 http://www.red-gate.com/Products/SQL_Source_Control/index.htm

答案 1 :(得分:2)

检查以下链接:

http://www.codinghorror.com/blog/2006/12/is-your-database-under-version-control.html

读门的工具
Sql Compare - 比较和同步SQL数据库模式。 Sql Data Compare:比较和同步SQL数据库内容。

14天试用版的链接:https://www.red-gate.com/dynamic/downloads/downloadform.aspx?download=sqlcompare

答案 2 :(得分:2)

我刚开发了这个example in the docs免费),可以帮助您轻松提取脚本用于SQL数据库,可以做比较,可以启动WinMerge 以快速将脚本与实时数据库进行比较,还可以同步差异更新脚本或将更改应用于数据库(表格除外)将涉及更多的复杂性和更多的风险。)

Servantt是用于将SQL Server数据库与版本控制脚本进行比较的WinMerge。

它支持并鼓励软件开发的最佳实践:

  • 将数据库对象保留在版本控制(*)
  • 从生产环境中的开发人员中删除访问权限
  • DBA审查性能瓶颈和命名标准的程序/视图的变化
  • 使用完全限定标识符和括号分隔符命名对象(它修复了CREATE PROCEDURE / VIEW / FUNCTION / etc脚本)

(*)脚本保存在本地文件夹中,该文件夹可以是Git,Subversion,TFS,Source Safe或任何其他VCS的工作副本。

免费下载:new tool

答案 3 :(得分:0)

我使用visual studio。每个开发人员的开发人员数据库,使用VIsual Studio 2010 Ultimate数据库工具 - 很好地“甚至”对抗TFS 2010;)