2012-02-01 134 views
0

我必須連接到許多具有連接字符串的Foxpro數據庫: Data Source = \\ All Users \\ DB0009 \ db1.dbc; User ID = xxx; Password = yyy; Provider = VFPOLEDB.1; Persist Security Info = True;來自SQL的SSIS動態連接字符串表

其中文件夾DB0009可以是0000到0100之間的任何整數,db1.dbc可以是每個文件夾的db1.dbc或db2.dbc。

對於每個連接字符串,我需要構建一個簡單的SQL語句,除了硬編碼的年份以外,它對於每個數據庫都是相同的。所以sql是:從表

select *,'2012'我希望能夠存儲連接字符串和每個連接字符串的年份在一個sql表中,可以在運行時查找。

我正在使用SSIS 2008.我猜根據我所看到的,我可以使用枚舉器設置爲ADO枚舉器的foreach循環(雖然我不介意在那裏確認),但怎麼可以我從同一張表中拖出一年,並將其放入數據流任務內部的sql查詢中?

感謝您的幫助! 雨霏

+0

希望創建一個所有可用連接字符串的權威列表並將該值與該連接字符串相關聯? – billinkc 2012-02-01 15:50:37

回答

1

你可以做以下步驟:

  1. 創建foreach循環來獲取連接字符串和年值到變量。
  2. 創建連接管理器,並使用表達式將連接字符串屬性設置爲連接字符串變量。
  3. 用一個表達式創建另一個變量,該表達式使用year變量(動態SQL命令字符串)創建SQL命令。
  4. 使用執行SQL任務在您的foreach中執行此操作。

下面是一個博客的鏈接,指出在執行SQL任務中映射參數應該有幫助。 http://www.rafael-salas.com/2007/11/ssis-mapping-parameter-inside-of.html