我有一个实时SQL Server 2008数据库,我需要开始处理其结构中的一些更改。显然,因为它是现场的我想要有一个我正在处理的开发副本。如何跟踪这些更改,以便在时机成熟时轻松更新我的实时数据库?
答案 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
如果您对数据库进行了一些重构,此方法还允许您编写数据转换脚本。