2017-07-14 110 views
0

如何升級SSIS 2014中創建的SSIS包使其能夠在SSIS 2016中工作?升級SSIS 2014中創建的SSIS包,以便在SSIS 2016中工作

我想調用使用c#(Package.Execute)的軟件包。 我的軟件包有自定義腳本任務。

我寫重定向像...

<assemblyIdentity name="Microsoft.SqlServer.ManagedDTS" culture="neutral" /> 
<bindingRedirect oldVersion="10.0.0.0-13.0.0.0" newVersion="13.0.0.0"/> 

但我仍然得到錯誤要運行SSIS包SQL Server數據工具外,您必須安裝Integration Services或更高。

回答

0

微軟文檔 - Understanding the Differences between Local and Remote Execution

只能有集成服務 計算機上運行的開發環境之外的軟件包安裝。您不能在沒有安裝Integration Services的客戶端計算機 之外的SQL Server數據工具(SSDT)之外運行 程序包,並且您的SQL Server授權條款 可能不允許您在其他計算機上安裝集成 服務。 SQL Server Integration Services是一個 服務器組件,不可再分發到客戶端計算機。至 從客戶端計算機運行軟件包時,您需要以 的方式啓動它們,以確保軟件包在服務器上運行。

因此,調用Package.Execute的C#代碼僅適用於安裝了SSIS的計算機。

請在您的本地開發機器上安裝SSIS以測試此代碼。或者試試another method to execute packages remotely

  • 使用SQL Server代理運行遠程包編程
  • 使用Web服務或遠程組件運行遠程包 編程

編輯:是的,這使得它很難對開發商有時。微軟希望你支付該SSIS許可證。

+0

感謝您的回覆特洛伊。 其實我的意思是SSIS 2014和SSIS 2016.我正在對我的問題進行更正 - 我的不好!我相信SSIS 2014包不直接在SSIS 2016引擎上工作。那麼有什麼方法可以實現這一點,尤其是當我編寫腳本任務和腳本組件(c#)時? –

+0

你的開發機器上是否安裝了SQL/SSIS 2016? –

+0

是的。 但是我的軟件包是在SSIS 2014中開發的。我們的一些客戶可能在2016年,有些仍在2014年。 –