如何比较SQL Server中属于两个不同模式的对象模式?

时间:2016-03-29 20:11:32

标签: sql-server visual-studio-2013 database-schema

我在dbo下有一个表,在一个名为tmp的模式下有一个几乎相同的表。 Visual Studio Schema Compare似乎不允许我选择一组基于dbo的对象,并将它们与一组类似的基于tmp的对象进行比较。

数据库服务器已锁定,无法创建第二个数据库。此外,由于资源限制,SQL服务器在本地开发计算机上不可用。 tmp模式允许我对tmp进行更改,然后比较并将这些更改推送到“dbo”的开发模式。

比较这两组物体的最佳方法是什么?

2 个答案:

答案 0 :(得分:7)

您可以使用ApexSQL Diff将不同架构的对象进行比较,并且它具有免费的社区版。

通过创建自定义模式映射,您将能够匹配具有不同模式的对象,并比较它们并在需要时进行同步。

如果您只想比较对象以查看差异并创建合并脚本,则可以查看免费工具 - ApexSQL Compare

由于已经提到过RedGate工具,因此可以帮助您的另一个工具是dbForge Schema Compare

答案 1 :(得分:4)

我想到了两种方法。尝试使用redgates sql-compare工具,在黄金imo中值得重量。

另一个选择是使用ssms的'generate scripts'功能,然后使用你选择的diff工具来比较生成的sql文本文件。