1
我在我的主機服務器上設置了鏈接服務器:「MyLinkedServer」 我的服務器「HostServer」上有一個SP。跨鏈接服務器的SQL更新
我正在調用HostServer上的存儲過程,該存儲過程使用MyLinkedServer上的DatabaseB中的表中的值更新MyLinkedServer上的DatabaseA中的表。
我有其他SP在相同的情況下運行正常,但他們正在做插入和刪除,但此SP無法更新DatabaseA中的表(沒有錯誤返回,只是沒有更改的數據),如果我更改連接要真正在「MyLinkedServer」上運行SP,它可以毫無問題地工作。
UPDATE MyLinkedServer.DataBaseA.dbo.MyTable
SET Column1 = db2.Column1
FROM MyLinkedServer.DataBaseA.dbo.MyTable db1
INNER JOIN
(
SELECT TOP 1 Column1
FROM MyLinkedServer.DataBaseB.dbo.MyTable db2
WHERE db2.Id = 2
) AS db2 ON db2.Id = 2
WHERE db1.Id = 1
你可以發佈一些示例代碼?也是這個SQL Server,如果是的話是什麼版本? – JNK 2010-11-03 13:40:56
您是否在使用任何分佈式事務? – 2010-11-03 13:41:14
沒有分佈式事務,它們因爲沒有設置在鏈接服務器上處理它們而倒閉了 – Ben 2010-11-03 13:53:14