2009-02-02 66 views
2

我試圖想出一種方法將表從Access數據庫中提取出來,在SQL 2008數據庫中自動創建這些表,並將數據移動到新表中。這個過程將定期發生,每次可能有不同的表格。通過SSIS創建和複製訪問表到SQL? SQL 2008

我想完全在SSIS中完成此操作。

C#SQL CLR對象是一個選項。

我一直在遇到的主要問題是如何獲取Access表的模式,然後將其轉換爲可以通過SSIS運行的SQL腳本。

任何想法?

TIA Ĵ

+0

是否有任何理由不想使用MS Access的導出菜單項,或使用「DoCmd.TransferDatabase transfertype」在VBA中編寫腳本? – BIBD 2009-02-02 19:32:05

回答

3

SSIS在運行時無法適應新表。 (您可以更改連接,將源移動到具有不同名稱但具有相同模式的表)因此,執行我認爲您所說的內容並不容易:將Access DB中的任意一組表升級爲SQL(鏡像它們的結構和數據,命名等),以便我可以編寫一些直接的SQL將數據轉換爲另一個SQL數據庫或數據庫的相同部分。

您可以從C#訪問SSIS對象模型並以編程方式構建包(或修改模板包),然後執行它。這可能會給你帶來最好的回報,但SSIS對象模型有點深刻。 SSIS團隊的博客有finally started putting up examples(一年後,我不得不爲自己弄清楚這一點)

總是有升遷嚮導,我敢肯定有一些第三方工具。