如何比较同一DB为他们的模式和表?(How to compare same DB for their

2019-10-17 04:08发布

我使用SQL Server 2008 R2中,我有两个相同的数据库,

  1. ABC(与像模式,表但是在表中没有数据仅结构)
  2. ABC1(与表中模式,表和数据)

我怎么能比较#1和#2的模式和表,我们是否有任何软件或者我们可以在SSMS本身做到这一点。

Answer 1:

You can write a sproc which will do this for you.

1.Lets get all the tables from ABC into a table variable or temp table.
2.Loop through the temp or table variable and get each table at a time.
3.Get all the column names,datatypes etc for this table and similarly get the same details for the same table from ABC1 database.
4.Also create one final result table where you just update the status against each table as match or nomatch
5.Repeat this for all the tables in the table variable.


Answer 2:

您可以使用以下软件进行比较数据库模式:

  1. 展鹏的SQL比较
  2. EMS DB的Comparer为SQL Server
  3. Visual Studio中比较数据库架构

Redgate SQL Compare更为用户比其他友好。



Answer 3:

您也可以尝试ApexSQL DIFF -一个SQL Server数据库比较和同步工具,它检测数据库对象之间的差异。 它产生于发现差异的综合报告,并可以自动实时和版本的数据库,备份,快照和脚本文件夹之间的同步过程

视频- 介绍ApexSQL DIFF

声明:我ApexSQL工作作为支持工程师



文章来源: How to compare same DB for their Schema and Tables?