是否可以在鏈接服務器上使用合併語句?如果是這樣如何?如何在鏈接服務器上使用合併
我曾嘗試以下,但它產生錯誤消息
一個MERGE語句的目標不能是遠程表,遠程 視圖,或在遠程表的圖。
EXEC sp_addlinkedserver
@server=N'devServer',
@srvproduct=N'',
@provider=N'SQLNCLI',
@datasrc=N'192.168.2.58\SQLSERVER';
EXEC sp_addlinkedserver
@server=N'localServer',
@srvproduct=N'',
@provider=N'SQLNCLI',
@datasrc=N'localhost\SQLSERVER';
Merge devServer.<dbName>.dbo.<tableName> as Target
USING localServer.<dbName>.dbo.<tableName> as Source
On (Source.HubID = Target.HubID)
When Matched then
update set
NAME = Source.NAME,
CODE = Source.CODE,
IPAddress = Source.IPAddress
When Not Matched Then
Insert(, , ,)
Values (, , ,);
select * from sys.Servers
您可以在'devServer'上運行您的語句,並只使用鏈接的服務器作爲您的源。 – 2013-05-07 08:47:12