Включите меня с голосованием за PowerShell в Действии . Существует набор блогов там также, проверяет //\O// блог, Запиханные Массы , и JB's (SQL) Powershell также, они идут путем назад с оболочкой и имеют рты хороших сценариев & отрывки для взгляда на.
Это можно сделать, установив опцию -sourceserver утилиты tablediff для первого сервера и опцию -destinationserver для второго сервера. Вы можете использовать sys.Tables для итерации по каждой таблице в базе данных, чтобы вы могли автоматизировать этот процесс.
Отредактировано
Я также хотел отметить эту статью , которая является умной частью t-sql код, который может служить вам лучше без осложнений, связанных с tablediff
В вашем комментарии, вот пример. Это не лучший способ сделать это в производственной среде, но он должен выполнить работу за вас. Вам, вероятно, будет лучше реализовать это в SSIS, если вам нужен более производительный вариант.
SET QUOTED_IDENTIFIER ON
DECLARE @TableNames as table (
id int identity(1,1),
tableName varchar(100))
DECLARE @sTableDiff nvarchar(1000)
DECLARE @tableName varchar(100)
DECLARE @counter int
DECLARE @maxCount int
INSERT INTo @TableNames
SELECT name
FROM sysobjects WHERE type = 'U'
SET @counter = 1
SELECT @maxCount = COUNT(name)
FROM sysobjects WHERE type = 'U'
WHILE @counter < @maxCount
Begin
SELECT @tableName = tableName
FROM @TableNames
WHERE id = @counter
SET @sTableDiff= ' "C:\Program Files\Microsoft SQL Server\90\COM\tablediff" -sourceserver Server1
-sourceuser sa -sourcepassword password -sourcedatabase YourDatabase -sourcetable ' + @tableName + '
-destinationserver Server2 -destinationuser sa -destinationpassword password -destinationdatabase
YourDatabase -destinationtable ' + @tableName + ' -f c:\Diff'
EXEC XP_CMDSHELL @sTableDiff
Set @counter = @counter + 1
End
Можете ли вы использовать эту опцию для запуска операторов sql в файле сценария и сравнения? Я могу ошибаться, просто подумав.
-bf число_ заявлений
Попробуйте dbForge Scheme Compare for SQL server и dbForge Data Compare for SQL Server . Он может сравнивать и синхронизировать любые данные и схемы базы данных. Быстро, легко, всегда с правильным результатом.
Запустите это в своей базе данных!