2013-03-14 120 views
0

我有很多鏈接的服務器,包含類似的數據庫,現在我被要求做一個存儲過程,將數據庫中的數據從一個服務器傳輸到另一個服務器的數據庫。但我應該將目標服務器名稱,源服務器名稱,目標數據庫名稱,源數據庫名稱作爲存儲過程的參數。 我能夠使用動態sql在同一服務器的不同數據庫之間執行此操作。如何動態地將數據從一臺服務器傳輸到另一臺服務器。

SET @dynsql =N'INSERT INTO '[email protected]+N'..UIElement (UIElementID,UIElementName) 
    SELECT @LatestUIElementId,UIElementName 
    FROM '+QUOTENAME(@sourceDBname)+N'.dbo.UIElement WHERE UIElementID = @OldUIElementId' 
    EXEC sp_executesql @dynsql,N'@LatestUIElementId int',@LatestUIElementId [email protected] 

但無法找到可以在服務器之間使用的方式。

+1

所以,當你只需將鏈接服務器添加到您的動態生成的對象名稱前面你上面的查詢不起作用?如果不是,你會得到什麼錯誤? – 2013-03-14 06:33:44

回答

0

在我看來,你在查詢中缺少目標服務器。從我上面看到的只有目標數據庫。

查詢的目標服務器應該是這樣的

select * from [Server].database.schema.table 
相關問題