我在“服务器X”上有一个SQL Server代理作业。这项工作很简单,并使用以下查询刷新表(在服务器X上),通过清除它,然后使用视图中的数据(也在服务器X上)重新填充它:
DELETE FROM [ClientList].[dbo].[LatestDownloadLogs]
INSERT INTO [ClientList].[dbo].[LatestDownloadLogs]
SELECT * FROM [ClientList].[dbo].[latestoverview-union]
“LatestDownloadLogs”表正在转移到“服务器Y”,但“latestoverview-union”视图将保留在“服务器X”上。
因此我需要的是这样的东西:
DELETE FROM [server Y].[ClientList].[dbo].[LatestDownloadLogs]
INSERT INTO [server Y].[ClientList].[dbo].[LatestDownloadLogs]
SELECT * FROM [server X].[ClientList].[dbo].[latestoverview-union]
当然,这并不容易,但希望这说明了我正在努力实现的目标。
答案 0 :(得分:2)
在服务器x上创建链接服务器到服务器y。
答案 1 :(得分:0)
你可以使用OPENROWSET,它需要连接信息,用户名和密码。密码...
但首先您可能需要启用Ad Hoc Distributed Queries
EXEC sp_configure 'show advanced options', 1
reconfigure
EXEC sp_configure 'Ad Hoc Distributed Queries', 1
reconfigure
然后您可以选择,插入或删除
SELECT FROM
OPENROWSET (... params...)
UPDATE
OPENROWSET (... params...)
希望这有助于......祝你好运。