2010-04-15 73 views
0

我正試圖從一個SQL 2000框中運行幾個DTS包。 DTS呼叫將來自.net 2.0 - 3.5代碼。我一直無法找到以編程方式實現此目的的好方法。我讀過的是從調用DTS包的存儲過程運行sql作業。有沒有人有這方面的經驗或知道調用DTS的好方法?從Sql Server 2005執行DTS包

注意:對於可預見的未來,這些軟件包將保持DTS。最終我們會將它們轉換爲SSIS。

任何洞察力或經驗將是非常有益的。

回答

0

我在工作中處於類似的情況,最後我們用命令行方式使用DTSRun(使用Sql 2005安裝)的單步SSIS包「包裝」我們的DTS包,以調用DTS打包在文件系統上。如果你這樣做,那麼這將是一個程序啓動一個我不熟悉的SSIS包的問題,​​但它必須儘可能地與2000年的DTS一樣。

+0

使用SSIS的問題是運行代碼的機器必須運行Sql Agent。目前用戶環境沒有這個設置。所以理想情況下,因爲現在有一個解決方案(vb 6代碼),所以我們希望在那裏沒有額外的開銷。 – Doerr 2010-04-16 13:12:52

+0

當然,除非可以從存儲過程調用SSIS包? – Doerr 2010-04-16 13:28:53

+0

不容易。你可以在數據庫上啓用xp_cmdshell,然後調用你想要的任何命令行,但是我建議不要這樣做。或者使用Sql Agent,並使用Sql Management Objects(SMO)等遠程連接服務器,並以編程方式啓動工作,接受'開銷'。選擇你的毒藥。 – ray2k 2010-04-16 14:43:12

0

Ahhh ..我找到了.net庫中的一個Com對象,它允許我進行交互。它是Microsoft DTSPackage對象庫。問題避免了。

相關問題