2010-08-09 41 views
0

我需要检查不同服务器上的类似数据库上的2个表,如果它们包含相同的信息(或大小,哈希,以检查它们是否相同的最佳方式),那么其中一个应删除其信息,每天安排一份工作。SQL Server作业检查2个数据库并根据结果采取行动?

这可能只使用SQL Server Management Studio中的Jobs界面吗?

回答

0

当你在SQL 2008上时,你可以使用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! 
; 
相关问题