SSIS:脚本任务 (vs15) 在 sql 服务器 2014 上部署时不起作用
SSIS: script task (vs15) not work when deploy on sql server 2014
错误:
There was an exception while
loading Script Task from XML: System.Exception: The Script Task
uses version 14.0 script that is
not supported in this release of Integration Services. To run the
package, use the Script Task to create a new VSTA script. In most
cases, scripts are converted automatically to use a supported version,
when you open a SQL Server Integration Services package in
%SQL_PRODUCT_SHORT_NAME% Integration Services. at
Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTask.LoadFromXML(XmlElement
elemProj, IDTSInfoEvents events)
我完全按照它说的做,但没有帮助。
有什么解决办法吗?
这对我有用:
- 为 Visual Studio 2013 安装 SSDT-BI。
- 在 Visual Studio 2015 年打开您的解决方案。
- Select 您在解决方案资源管理器中的 SSIS 项目。
- 在项目菜单中 select 属性。
- 在 属性 页面对话框中 select 配置属性 -> 常规
- 在部署目标版本下将目标服务器版本更改为 "SQL Server 2014."
- 清理并重建解决方案并重新部署。
在SSDT的修订版(现在是14.0.61x)中,有一个修复。
安装新版本。 (SSDT For download)
右键单击项目 > 属性 > 配置属性 > 常规 > TargetServerVersion - 更新到 SQL Server 2014 > 重新部署。
虽然这个问题有点过时了,但我在目标服务器上遇到了同样的错误,只是上下文略有不同:
- 创建了一个针对 SQL Server 2014
的 SSIS 包
- 添加脚本任务
- 将其部署到 SQL Server 2014
- 包验证失败 "The Script Task uses version 15.0 script that is not supported in this release of Integration Services..."
我使用了以下环境进行开发和部署:
- VS2015 更新 3
- SSDT v 17.1
- 使用 SSMS v17.1
部署
当前 SSDT 版本 17.1 支持目标 SQL Server 2014 - SQL Server vNext。如前所述,当前版本的 SSDT 通过在项目配置中提供目标选项解决了问题中的问题。
我注意到上面的 SSIS 项目如果部署在目标服务器上:
- VS 2015(Select SSIS 项目 -> 右键单击 -> Select 部署)
- SQL Server 2014 SSIS 部署向导(可能仅当您安装了本地实例时可用;在 Microsoft SQL Server 2014 Windows 开始菜单)
如果您尝试使用 SQL Server Management Studio v17.1 版本的 SSIS 部署向导 进行部署,部署的包失败。部署的脚本任务部署为 SQL Server 2014 不支持的版本 15.0。
如果我使用 SSIS 部署向导 从 Microsoft SQL Server vNext CTP2.0 Windows 开始菜单,可能是通过安装 SSMS 17.1 添加的,部署的包脚本任务失败并出现相同的错误。
总结:
- 最新的 SSDT v17.1 for VS2015 通过提供有针对性的服务器配置选项解决了上述问题
- 需要部署到Visual Studio 2015
- 可以使用目标服务器版本的 SSIS 部署向导
进行部署
- 如果使用最新的 SSMS v17.1 和内置 SSIS 部署向导,SSIS 包脚本任务将无法在目标服务器上升级到 SQL服务器2017版本
也许这是设计使然,但它非常混乱,让我措手不及。为了以防万一这是一个错误,我提交了 bug report.
错误:
There was an exception while loading Script Task from XML: System.Exception: The Script Task uses version 14.0 script that is not supported in this release of Integration Services. To run the package, use the Script Task to create a new VSTA script. In most cases, scripts are converted automatically to use a supported version, when you open a SQL Server Integration Services package in %SQL_PRODUCT_SHORT_NAME% Integration Services. at Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTask.LoadFromXML(XmlElement elemProj, IDTSInfoEvents events)
我完全按照它说的做,但没有帮助。
有什么解决办法吗?
这对我有用:
- 为 Visual Studio 2013 安装 SSDT-BI。
- 在 Visual Studio 2015 年打开您的解决方案。
- Select 您在解决方案资源管理器中的 SSIS 项目。
- 在项目菜单中 select 属性。
- 在 属性 页面对话框中 select 配置属性 -> 常规
- 在部署目标版本下将目标服务器版本更改为 "SQL Server 2014."
- 清理并重建解决方案并重新部署。
在SSDT的修订版(现在是14.0.61x)中,有一个修复。
安装新版本。 (SSDT For download)
右键单击项目 > 属性 > 配置属性 > 常规 > TargetServerVersion - 更新到 SQL Server 2014 > 重新部署。
虽然这个问题有点过时了,但我在目标服务器上遇到了同样的错误,只是上下文略有不同:
- 创建了一个针对 SQL Server 2014 的 SSIS 包
- 添加脚本任务
- 将其部署到 SQL Server 2014
- 包验证失败 "The Script Task uses version 15.0 script that is not supported in this release of Integration Services..."
我使用了以下环境进行开发和部署:
- VS2015 更新 3
- SSDT v 17.1
- 使用 SSMS v17.1 部署
当前 SSDT 版本 17.1 支持目标 SQL Server 2014 - SQL Server vNext。如前所述,当前版本的 SSDT 通过在项目配置中提供目标选项解决了问题中的问题。
我注意到上面的 SSIS 项目如果部署在目标服务器上:
- VS 2015(Select SSIS 项目 -> 右键单击 -> Select 部署)
- SQL Server 2014 SSIS 部署向导(可能仅当您安装了本地实例时可用;在 Microsoft SQL Server 2014 Windows 开始菜单)
如果您尝试使用 SQL Server Management Studio v17.1 版本的 SSIS 部署向导 进行部署,部署的包失败。部署的脚本任务部署为 SQL Server 2014 不支持的版本 15.0。
如果我使用 SSIS 部署向导 从 Microsoft SQL Server vNext CTP2.0 Windows 开始菜单,可能是通过安装 SSMS 17.1 添加的,部署的包脚本任务失败并出现相同的错误。
总结:
- 最新的 SSDT v17.1 for VS2015 通过提供有针对性的服务器配置选项解决了上述问题
- 需要部署到Visual Studio 2015
- 可以使用目标服务器版本的 SSIS 部署向导 进行部署
- 如果使用最新的 SSMS v17.1 和内置 SSIS 部署向导,SSIS 包脚本任务将无法在目标服务器上升级到 SQL服务器2017版本
也许这是设计使然,但它非常混乱,让我措手不及。为了以防万一这是一个错误,我提交了 bug report.