SQL Server 2008开发和版本控制?

时间:2011-04-21 01:47:37

标签: sql sql-server sql-server-2008

我有一个实时SQL Server 2008数据库,我需要开始处理其结构中的一些更改。显然,因为它是现场的我想要有一个我正在处理的开发副本。如何跟踪这些更改,以便在时机成熟时轻松更新我的实时数据库?

3 个答案:

答案 0 :(得分:1)

Red Gate的SQL源代码控制的重点是:http://www.troyhunt.com/2010/07/rocking-your-sql-source-control-world.html

另外,您可以轻松地将其绑定到自动发布的CI流程中:http://www.troyhunt.com/2011/02/automated-database-releases-with.html

答案 1 :(得分:0)

Redgate工具非常棒。

您还可以使用Visual Studio数据库项目来源控制和同步架构和数据,并部署:Working with Database Projects

答案 2 :(得分:0)

一个选项是编写sql文件中的所有数据库模式更改,这些更改可以在开发完成后针对实时数据库运行。

我建议使用IF NOT EXISTS检查,以便您的脚本可以重新运行而不会导致错误。

例如:

IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES 
               WHERE TABLE_NAME='tablename') 
BEGIN
      CREATE TABLE...
END

如果您对数据库进行了一些重构,此方法还允许您编写数据转换脚本。