首頁 > 資料庫 > mysql教程 > 如何在 SSIS 中根據另一個資料庫的結果查詢一個資料庫?

如何在 SSIS 中根據另一個資料庫的結果查詢一個資料庫?

Patricia Arquette
發布: 2024-12-19 17:00:12
原創
343 人瀏覽過

How to Query One Database Based on Results from Another in SSIS?

根據另一個資料庫的結果查詢資料庫

在 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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板