Задание SQL Server проверить 2 базы данных и действовать на основе результата? - PullRequest
0 голосов
/ 09 августа 2010

Мне нужно проверить 2 таблицы в похожих базах данных на разных серверах, если они содержат одинаковую информацию (или размер, хэш, какой бы ни был лучший способ проверить, одинаковы ли они), тогда одна из них должна иметь свою информациюудаляется по запланированному заданию каждый день.

Возможно ли это, используя только интерфейс Jobs из SQL Server Management Studio?

1 Ответ

0 голосов
/ 09 августа 2010

Поскольку вы работаете в SQL 2008, вы можете использовать команду MERGE для проверки (если вы все еще говорите о сравнении таблицы связанных серверов из вашего другого вопроса здесь).

Вы бы настроили заданиекоторая запускается под учетной записью с правильными разрешениями на чтение данных со связанного сервера в качестве источника команды MERGE, а затем удаляет записи в целевой таблице, соответствующие ей:

MERGE DBNAME.SCHEMANAME.TABLENAME t --this is your target (the local table)
using (SELECT * from SERVERB.DBNAME.SCHEMANAME.TABLENAME) s --this is your source (the linked server)
on (t.uniquefield = s.uniquefield) --join condition

when matched then delete -- when matched, then delete!
;
...