我想比较两个SQL Server数据库,包括模式(表结构)和表中的数据。做这件事最好的工具是什么?


当前回答

如果你使用MSSQL,我肯定会使用AdeptSQL。它是我用过的最不好看的数据库比较工具,但却是最有天赋的。它可以比较结构和数据。它告诉您哪些表在一个db上存在,而在另一个db上不存在,比较常用数据库的结构和数据,并生成脚本来同步这两个数据库。它不是免费的,但有30天的试用期(据我所知)

其他回答

我尝试了OpenDiff工具。伟大的工具是免费的,易于使用。

我正在使用红门公司的软件: http://www.red-gate.com

我使用内置在最新版本Microsoft Visual Studio 2015社区版(免费)或专业版/高级版/终极版中的模式和数据比较功能。效果好极了!

http://channel9.msdn.com/Events/Visual-Studio/Launch-2013/VS108

Red-Gate的SQL数据比较工具是我的第二个选择:

(来源:spaanjaars.com)

http://www.red-gate.com/products/sql-development/sql-compare/ http://www.red-gate.com/products/sql-development/sql-data-compare/

数据库工作台也可以做到

http://www.upscene.com/products.dbw.index.php

跨数据库开发 使用模式比较和迁移 比较测试和部署的工具 数据库,迁移现有数据库 到不同的数据库系统。

你也可以用数据库比较器

http://www.clevercomponents.com/products/dbcomparer/dbcomparer.asp

我把它用在Firebird上,效果很好。

来自http://www.simego.com/Products/SQL-Admin-Studio的SQL Admin Studio现在是免费的,可以让你管理你的SQL数据库,SQL比较和同步,数据比较和同步等等。也支持SQL Azure和一些MySQL支持太。

[更新:是的,我是上述程序的作者,因为它现在是免费的,我只是想与社区分享它]