2017-07-14 111 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年。 –