我将 SQL Server 2012 设置为 SQL Server 2008 服务器上的链接服务器。
以下查询在不到 1 秒内执行:
SELECT kg.IdGarment
FROM Products p
INNER JOIN ZAMStaffRentals r ON r.ProductID = p.UniqueID
INNER JOIN ZAMCustomer_Staff s ON r.StaffID = s.UniqueID
INNER JOIN ZAMRentalGarments g ON g.StaffRentalID = r.UniqueID
INNER JOIN [REMOTE_SERVER].[REMOTE_DB].dbo.t_ProcessIT_Garment kg on g.BarcodeRFID = kg.IdGarment
INNER JOIN ZAMKannChanges log on log.GarmentID = g.UniqueID
WHERE log.ActionType = 'I'
Run Code Online (Sandbox Code Playgroud)
t_ProcessIT_Garment包含 37,000 行,查询返回两条记录,IdGarment 列为主键。这里没问题。
但是,如果我运行此查询进行远程更新,则需要 24 秒,并且会影响 2 行:
UPDATE [REMOTE_SERVER].[REMOTE_DB].dbo.t_ProcessIT_Garment SET
IdGarment = IdGarment
FROM Products p …Run Code Online (Sandbox Code Playgroud)