VB.NET中執行SSIS產生的DTSX
當需要匯入匯出大量的資料時,尤其是異質的資料(例如把Access的mdb資料匯入到MS-SQL),使用SSIS的方式速度是最快的,而且可以在SQL Server Management Studio裡面,直接在操作匯入匯出的時候,把過程儲存成SSIS的格式(.DTSX)。下次有相同的匯入匯出動作,就可以直接透過儲存的dstx來使用。
如果想在程式中執行DTSX,可以透過以下的方式處理
- 在專案中,要加入參考【Microsoft.SQLServer.ManagedDTS】
(可以在『C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.SqlServer.ManagedDTS\[版本]』裡面找到) - Imports Microsoft.SqlServer.Dts.Runtime
- 相關程式碼如下:
Dim app As Application = New Application() Dim p As Package = app.LoadPackage(pkg, Nothing) Dim vir As Variables = p.Variables If Not p.Execute(Nothing, vir, Nothing, Nothing, Nothing) = DTSExecResult.Success Then Throw New Exception("NICE.mdb檔案匯入SQL失敗!!") Else Return "Success" End If
可以在程式中執行,那麼無論是透過畫面的按鈕,還是排程都可以處理這樣的動作了!!
另外要注意的是,如果是使用Web Service或者是ASP.NET的話,可能要注意一下權限的問題
以下是簽名:
- 歡迎轉貼本站的文章,不過請在貼文主旨上加上【轉貼】,並在文章中附上本篇的超連結與站名【topcat姍舞之間的極度凝聚】,感恩大家的配合。
- 小喵大部分的文章會以小喵熟悉的語言VB.NET撰寫,如果您需要C#的Code,也許您可以試著用線上的工具進行轉換,這裡提供幾個參考
Microsoft MVP Visual Studio and Development Technologies (2005~2019/6) | topcat Blog:http://www.dotblogs.com.tw/topcat |