2015-04-28 71 views
-1

我有两个不同的数据库,在database1中有122个表,在database2中有125个表(两个数据库中都有相同的表名)。与database2中的表(tblusers)相比,database1(tblusers)中的表中有一个表有额外的列。 现在我如何查找数据库2中的额外表,并在表中找到额外的列。 (通过比较两个数据库中的两个表)。查找不在另一个数据库中的表sql

Msforeachdb会很好,否则是一个正常的查询。

+3

您正在使用哪个数据库? mysql <> sql server –

+0

sql server数据库。 –

+1

你为什么要在这里使用msforeachdb?你说你试图比较两个已知数据库中的表。您可以将sys.tables和sys.columns与针对两个数据库的查询进行比较。另一种选择是使用redgate的sql比较。它所做的一切,再加上检查索引等。 –

回答

0

为了清晰和社区的利益。在Sean Lange对OP的评论中发布的答案是:

为什么要在这里使用msforeachdb?你说你试图比较两个已知数据库中的 表。您可以将sys.tables和sys.columns与针对两个数据库的查询进行比较。另一个选项是 正在使用redgate的sql比较。它所做的一切加上检查索引 等等。

+0

这为我工作:) '从 [databasename1] .INFORMATION_SCHEMA.TABLES其中TABLE_NAME不 (选择TABLE_NAME从[databasename2] .INFORMATION_SCHEMA.TABLES) 'SELECT TABLE_NAME –

相关问题