2011-07-07 19 views
0

直到明天我才能訪問SSIS,所以我想我會在開始這個項目的工作之前徵求建議。SSIS可以很好地導入多個表嗎?

我們目前使用Access存儲我們的數據。它沒有以關係格式存儲,所以這是一個非常糟糕的混亂。我們希望轉移到一個集中的數據庫(SQL Server 2008 R2),這需要重寫我們的大部分代碼庫(順便說一下,這也是一個糟糕的混亂。)由於時間的限制,在這之前可以完成,我們要去需要建立一個專門用於客戶按需報告生成目的的集中式數據庫。所以,我們的應用程序仍然會在Access上運行。相反的:

接收數據 - >導入訪問初始文件有一個表 - >數據處理 - >使用一個表的訪問結果文件 - >生成報告

的目標是:

接收數據 - >使用一個表導入到初始文件 - >將初始數據導入SQL Server中的多個表 - >導出Access工作文件與一個表 - >數據處理 - >訪問結果文件 - >將結果導入SQL Server中的多個表 - >生成報表

我們將使用SSRS作爲報表組件,它似乎是l ike它會很簡單。我不確定單獨使用SSIS是否可以很好地將Access數據拆分爲多個表格,或者如果所有內容都應該導入到使用SSIS的臨時表中,然後與存儲過程分離,或者需要寫入這是一個獨立的應用程序。

之前還沒有做過很多關於SQL Server的工作,所以任何建議都是值得讚賞的。

回答

1

在SSIS包中,您可以編寫代碼(例如C#)來執行您自己的/自定義的數據轉換。但是,SSIS帶有內置轉換功能,可能會滿足您的需求。 SSIS非常強大和靈活。實際上,你可能會用SSIS中的數據做任何你想做的事情。 爲任務的高層次的工作流程可能喜歡這樣的: 1.連接到數據源,並提取數據 2.轉換數據 3.輸出數據到目標數據源

1

你當然可以拆分一個數據流分成兩個獨立的分支併發送到兩個目的地。您所需要做的就是在數據流中進行多播,然後大部分轉換將在此之後發生。

然而,根據您所說的,更好的解決方案可能是使用Access表作爲臨時數據庫,然後從那裏獲取數據並將其發送到SQL Server。這意味着兩個數據流,但這將是一個更清潔的實現。

相關問題