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 –

相關問題