2017-09-01 26 views
0

我正在使用SSIS連接到SQL Server數據庫並將表拉入另一個SQL Server數據庫。使用Visual Studio 2013來管理SSIS腳本。如何在SSIS腳本中的日期範圍內提取數據

我需要拉的表格之一是巨大的,所以我想拉取大於日期範圍的數據。即:2016年1月1日及以後的數據。 我如何通過SSIS做到這一點?我覺得應該在某個地方添加一個'Where'條款或者等同於那個條款。

鏈接兩個數據庫是否更容易,但出於安全原因,我不確定這是否是一個選項。

任何見識都會很棒。 謝謝!

+0

你是如何將表拉入另一個SQL Server數據庫的?它應該像將where子句添加到您正在使用的任何語句一樣簡單。 – scsimon

回答

0

您可以在沒有腳本的情況下執行此操作。創建一個數據流並通過sql命令設置你的源代碼,或者創建一個存儲過程來處理你的過濾。下面是一個使用SQL命令

enter image description here

然後創建一個目標和源列映射到你的目的地的例子。

另一種方法是將數據訪問模式設置爲變量。有了這個,你可以通過變量建立sql查詢,並使用變量表達式使日期過濾器動態化。

我通常使用存儲過程並傳入參數進行過濾,但如果您剛開始使用ssis,我會先嚐試其他兩個選項。

0

試試吧

  • 使用數據流任務
  • 配置源的OLE DB源數據訪問模式SQL命令或變量SQL命令(可以參數化兩者)
  • 添加OLE DB目的地時,配置數據訪問模式表或視圖 - 快速負載和行每批次和最大插入提交大小 100000(你需要測試,以配合您的需要)
+0

要參數化SQL,請使用通配符「?」並點擊參數按鈕 –