1

使用通常的源代码控制解决方案,程序员将从存储库更新他的代码,然后将他的更改签入到存储库。

我知道如何将漂移重新合并到我的项目中的唯一方法是使用模式比较功能,但是这个功能只是告诉我我的项目和目标数据库之间的区别是什么,而没有给出任何关于发生什么变化的迹象所以如果我在使用 Schema Compare 更新我的项目时不小心排除了这些项目,我可能会恢复我最终所做的更改。

有没有更好的方法可以将漂移重新融入我的项目,而不必担心非常小心不要吹走我所做的更改?

4

3 回答 3

0

您可以将您的数据库项目 (SSDT) 作为目标,将“漂移数据库”作为源进行比较,“更新”按钮将同样轻松地更新您的模型。

换句话说,您可以使用模式比较将更改导入您的 SSDT 项目,然后转身并将您的模式(新合并的更改)发布回数据库。

于 2013-09-18T18:06:52.627 回答
0

如果您使用 SSMS,您可以尝试将 SQL 源代码控制与您的数据库项目结合使用。我们已经宣布了一个 beta 版本,这个功能在这里工作:

http://social.msdn.microsoft.com/Forums/en-US/ssdt/thread/0c763f98-c55a-44a7-9100-80a6d9223d04

这将区分对数据库所做的尚未同步到项目的更改,以及项目中需要应用到数据库的更改。如果这不能满足您的需求,SQL 源代码控制项目团队很乐意听取您的意见!

于 2013-02-25T16:48:30.220 回答
0

sqlpackage.exe 有一个选项来检测数据库漂移(即自部署数据库以来所做的更改):

漂移报告参数。SqlPackage.exe 报告操作创建一个 XML 报告,其中包含自上次注册以来对已注册数据库所做的更改。

它要求您在部署时注册数据库,但我认为这并不是什么大问题。

希望有帮助。

捷通

于 2013-04-03T08:49:31.687 回答