SSIS脚本任务失败版本15.0脚本?

时间:2022-03-26 20:54:50

I have a 2012 SSIS project that runs on SQL Server 2016. I have SSDT 2015 on both my dev machine and server. Everything works fine except for script tasks - I made a change to an existing script task and rebuilt and redeployed the project and I receive the following error:

我有一个在SQL Server 2016上运行的2012 SSIS项目。我的开发机器和服务器上都有SSDT 2015。除了脚本任务以外,一切都很正常——我对现有的脚本任务进行了更改,并重新部署和重新部署了这个项目,我收到了以下错误:

Script task uses version 15.0 script that is not supported in this release of integration services. To run the package, create a new script.

脚本任务使用本集成服务版本中不支持的15.0版本脚本。要运行这个包,请创建一个新脚本。

I've tried the following:

我试过以下:

  • upgrading the project to 2016
  • 项目升级至2016年
  • creating a new script object
  • 创建一个新的脚本对象。
  • created script on the server
  • 在服务器上创建脚本

It runs fine through SSDT 2015, but once it is deployed it fails with the error above when executing the package via SSMS - this is the result from both my dev box and the server. I thought 14.0 was 2016? Any ideas how I can fix this?

它在SSDT 2015年运行良好,但是一旦部署,它就会在通过SSMS执行包时出现上面的错误——这是我的开发框和服务器的结果。我还以为是2016年呢?有什么办法可以解决这个问题吗?

Script tasks (in packages) cannot be executed via integration services catalog on server, but work fine in SSDT.

脚本任务(包中)不能通过服务器上的集成服务目录执行,但是在SSDT中可以很好地工作。

4 个解决方案

#1


4  

Here is what worked for me. If you use SSMS and try to add your DTSX (which contains a script) via Integration Services Catalog (Import and Deploy) it will fail. However if you use the Project>Deploy option from within Visual Studio it will succeed. My target was SQL 2016 and SSDT is 2015. Note that under Project is a Upgrade All Packages option which I used. I don't know if this is necessary, I don't think so, but just in case.

这是对我有用的。如果您使用SSMS并尝试通过集成服务目录(导入和部署)添加您的DTSX(包含脚本),那么它将失败。但是,如果您在Visual Studio中使用项目>部署选项,它将成功。我的目标是SQL 2016, SSDT是2015。注意,在Project下是我使用的升级所有包选项。我不知道这是否必要,我不这么认为,只是以防万一。

#2


0  

This error is really annoying, and really stupid. Thanks to Microsoft for fully bugged and glitching development under 2014 and 2016 services using SSDT 17+ (did they mean sh.t-sh.t-devil's-tools?)

这个错误很烦人,也很愚蠢。感谢微软在2014年和2016年使用SSDT 17+(他们是指sh.t-sh.t-devil’s-tools吗?)进行了全面的漏洞百出、漏洞百出的开发。

The easiest way to workaround it is to deploy your single packages on SQL Server using BIDS Helper. Just be sure that you set the same project compatibility as your target server is.

解决这个问题的最简单方法是使用投标助手将单个包部署到SQL服务器上。只要确保您设置了与目标服务器相同的项目兼容性。

Same package (with just ONE EMPTY DEFAULT script dragged in), two types of deployment - Save copy as... on SQL Server, and BIDS Helper rightclick - Deploy.

同一个包(只有一个空的默认脚本拖进来),两种类型的部署-保存副本为…在SQL Server上,并投标帮助程序右击-部署。

Running this package from the agent job. Using the first deployment type - you get the error about 15.0 version, with the second type - you are not. I'm happy with that )))

从代理作业运行这个包。使用第一个部署类型——您会得到关于15.0版本的错误,而使用第二个类型——您不是。我对此很满意)

#3


0  

This article helped me solve this problem. I had the same problem with Visual Studio 2015 and SQL Server 2016 when deployed ispac file using SSMS 2017. When I started using SSMS 2016 all started working fine.

这篇文章帮助我解决了这个问题。在使用SSMS 2017部署ispac文件时,我在Visual Studio 2015和SQL Server 2016上也遇到了同样的问题。当我开始使用SSMS 2016时,一切都开始运转良好。

#4


0  

There is a difference when you deploy a single package or the whole project:

当您部署单个包或整个项目时,有一个不同之处:

If you deploy a single package the version of the visual studio used to deploy the single package has to be the same as version of the Visual Studio with which the whole project was deployed.

如果部署单个包,用于部署单个包的visual studio的版本必须与部署整个项目的visual studio的版本相同。

If you deploy the whole project then these script version problems are adjusted by VS at the deployment, so the problem should not occur.

如果您部署整个项目,那么这些脚本版本问题将在部署时由VS进行调整,因此不应出现问题。

#1


4  

Here is what worked for me. If you use SSMS and try to add your DTSX (which contains a script) via Integration Services Catalog (Import and Deploy) it will fail. However if you use the Project>Deploy option from within Visual Studio it will succeed. My target was SQL 2016 and SSDT is 2015. Note that under Project is a Upgrade All Packages option which I used. I don't know if this is necessary, I don't think so, but just in case.

这是对我有用的。如果您使用SSMS并尝试通过集成服务目录(导入和部署)添加您的DTSX(包含脚本),那么它将失败。但是,如果您在Visual Studio中使用项目>部署选项,它将成功。我的目标是SQL 2016, SSDT是2015。注意,在Project下是我使用的升级所有包选项。我不知道这是否必要,我不这么认为,只是以防万一。

#2


0  

This error is really annoying, and really stupid. Thanks to Microsoft for fully bugged and glitching development under 2014 and 2016 services using SSDT 17+ (did they mean sh.t-sh.t-devil's-tools?)

这个错误很烦人,也很愚蠢。感谢微软在2014年和2016年使用SSDT 17+(他们是指sh.t-sh.t-devil’s-tools吗?)进行了全面的漏洞百出、漏洞百出的开发。

The easiest way to workaround it is to deploy your single packages on SQL Server using BIDS Helper. Just be sure that you set the same project compatibility as your target server is.

解决这个问题的最简单方法是使用投标助手将单个包部署到SQL服务器上。只要确保您设置了与目标服务器相同的项目兼容性。

Same package (with just ONE EMPTY DEFAULT script dragged in), two types of deployment - Save copy as... on SQL Server, and BIDS Helper rightclick - Deploy.

同一个包(只有一个空的默认脚本拖进来),两种类型的部署-保存副本为…在SQL Server上,并投标帮助程序右击-部署。

Running this package from the agent job. Using the first deployment type - you get the error about 15.0 version, with the second type - you are not. I'm happy with that )))

从代理作业运行这个包。使用第一个部署类型——您会得到关于15.0版本的错误,而使用第二个类型——您不是。我对此很满意)

#3


0  

This article helped me solve this problem. I had the same problem with Visual Studio 2015 and SQL Server 2016 when deployed ispac file using SSMS 2017. When I started using SSMS 2016 all started working fine.

这篇文章帮助我解决了这个问题。在使用SSMS 2017部署ispac文件时,我在Visual Studio 2015和SQL Server 2016上也遇到了同样的问题。当我开始使用SSMS 2016时,一切都开始运转良好。

#4


0  

There is a difference when you deploy a single package or the whole project:

当您部署单个包或整个项目时,有一个不同之处:

If you deploy a single package the version of the visual studio used to deploy the single package has to be the same as version of the Visual Studio with which the whole project was deployed.

如果部署单个包,用于部署单个包的visual studio的版本必须与部署整个项目的visual studio的版本相同。

If you deploy the whole project then these script version problems are adjusted by VS at the deployment, so the problem should not occur.

如果您部署整个项目,那么这些脚本版本问题将在部署时由VS进行调整,因此不应出现问题。