根據另一個資料庫的結果查詢資料庫
在 SSIS 中,從多個資料庫擷取資料可能是一項常見任務。本文探討了根據從另一個資料庫取得的結果在一個資料庫中執行查詢的三種方法:
方法1:使用查找轉換
新增查找轉換以檢索來自第一個資料庫的ID 清單。從查找表中至少選擇一列。但是,要根據 ID 清單過濾行,您需要:
方法 2:使用腳本Task
此方法可以讓您避免載入所有資料。使用具有 VB.NET 程式碼的腳本任務來檢索 ID 清單並將其儲存在使用者變數中。將變數設定為後續資料流任務的來源。
方法 3:使用執行 SQL 任務
與方法 2 類似,但使用執行 SQL 任務建立 IN 子句。執行下列 SQL 指令以擷取包含 ID 清單和查詢的單一結果集:
DECLARE @str AS VARCHAR(4000) SET @str = '' SELECT @str = @str + CAST([ID] AS VARCHAR(255)) + ',' FROM dbo.MyTable SET @str = 'SELECT * FROM MySecondDB WHERE ID IN (' + SUBSTRING(@str,1,LEN(@str) - 1) + ')' SELECT @str
將結果儲存在使用者變數中並將 DataFlow 任務延遲驗證屬性設為 True。
透過利用這些方法中的任何一種,您可以根據從另一個資料庫獲得的結果有效地查詢資料庫,從而使您能夠在 SSIS 套件中執行更複雜的資料操作。
以上是如何在 SSIS 中根據另一個資料庫的結果查詢一個資料庫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!