2014-01-29 16 views
0

這是我一直在努力做的事情:SSIS從SQL表中的參數數據源

SSIS包:項目

enter image description here

用下面的SQL語句,使用鏈接的服務器:

USE [TARGET] 
GO 

INSERT INTO [dbo].[Item] 
     ([No_] 
     ,[Description] 
     ,[Unit Price] 
     ) 
SELECT [No_] 
     ,[Description] 
     ,[Unit Price] 
FROM [SOURCE].[Database].[dbo].[Item] 

enter image description here

我想要做什麼:

enter image description here

存儲的數據源兩個目標和源的SQL表數據源:

Data Source=localhost;Initial Catalog=TARGET;Provider=SQLNCLI.1;Integrated Security=SSPI;Auto Translate=False; 

Data Source=localhost;Initial Catalog=SOURCE;Provider=SQLNCLI.1;Integrated Security=SSPI;Auto Translate=False; 

最後更新SSIS包的SQL語句的參數指向。

INSERT INTO @SOURCE +'.[Item]'+ 
     ([No_] 
     ,[Description] 
     ,[Unit Price] 
     ) 
SELECT [No_] 
     ,[Description] 
     ,[Unit Price] 
FROM @SOURCE +'.[Item]'+ 

但到目前爲止還沒有成功,有什麼建議嗎?


更新:

缺少一個畫面:

enter image description here

在連接管理器我想從表中數據源後,「數據源信息(第一張圖片是我想要做「)


Upda te 2:

這可能嗎?

enter image description here

+0

我已經投票決定關閉這個,因爲它是不清楚。圖片很好,但你需要詳細說明你正在嘗試做什麼。 –

回答

2

可以在Execute SQL Task試試這個: -

DECLARE @query nvarchar(max) 
DECLARE @TARGET nvarchar(200) = ? 
DECLARE @SOURCE nvarchar(200) = ? 
Set @query ='INSERT INTO ' + @TARGET +'.[Item] 
    ([No_] 
    ,[Description] 
    ,[Unit Price] 
    ) 
    SELECT [No_] 
    ,[Description] 
    ,[Unit Price] 
    FROM ' + @SOURCE +'.[Item]' 
EXEC(@query) 

Parameter Mapping映射?到創建的變量,即目標和源

+0

OK看起來不錯。我在添加鏈接服務器信息的數據源時遇到了問題...(添加了一張圖片) – AceAlfred

+0

U可以在創建連接時選擇任何數據庫因爲您總是會使用[Server]訪問鏈接表[Database]。[Database]。[架構] [表]' – praveen