我们直接在msdb.dbo.sysssispackages中修改了SSIS软件包,但旧版本仍在运行

发布于 2025-02-01 03:06:09 字数 361 浏览 1 评论 0原文

我们直接通过以下内容修改了SSIS软件包的脚本:

updateText msdb.dbo.sysssspackages.packagedata @ptrval @searchtextoffset @searchtextlen @newtext;

修改是替换字符串常数。为了验证修改已保存,我们从SSM中导出软件包,并确认导出的脚本包含我们的修改(我们的新字符串常数)。

但是,当我们通过DTEXEC执行软件包时,仍在使用旧的字符串常数。好像包装没有更新。

我们需要做其他事情(在UpdateText之后)才能生效吗? UpdateText甚至是更新软件包脚本的可行方法吗?

谢谢。

We modified an SSIS package's script directly via the following:

UPDATETEXT MSDB.dbo.sysssisPackages.Packagedata @ptrval @SearchTextOffset @SearchTextLen @NewText;

The modification was to replace a string constant. To verify the modification was saved, we exported the package from SSMS and confirmed the exported script contained our modification (our new string constant).

However, when we execute the package via DTExec, the old string constant is still being used. It's as if the package was not updated.

Is there something else we need to do (after UPDATETEXT) for our change to take effect? Is UPDATETEXT even a viable way to update a package script?

Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不再让梦枯萎 2025-02-08 03:06:09

我的回忆是SSIS存储了.NET脚本本身编译的二进制文件。您可以尝试打开您在Visual Studio中导出的软件包,编辑脚本任务并按下Repompile按钮,保存,保存并部署到MSDB(通过dtutil.exe),

遇到的下一个挑战是

软件包中的版本号无效

,将目标更改为SQL 2016和Redeploy。如果您通过命令行部署,请确保您在130路径中使用dtutil.exe,否则部署将在部署操作过程中升级包装(假设140 dtutil首先在路径环境变量中列出了140个dtutil

)将路径号安装到SQL Server版本IE IE IE 130 == SQL Server 2016

My recollection is that it SSIS stored the .NET script itself and the compiled binary. You might try opening the package you exported in Visual Studio, editing the Script Task and hitting the recompile button, save, save and deploy to the MSDB (via dtutil.exe)

The next challenge encountered was

The version number in the package is not valid

In the Project settings in VS 2017, change the target to SQL 2016 and redeploy. If you deploy via the command line, ensure that you usethe dtutil.exe in the 130 path, otherwise the deploy will upgrade the package during deploy operation (assuming the 140 dtutil is listed first in the PATH environmental variable)

Reference answer/chart for translating install path numbers to SQL Server versions i.e. 130 == SQL Server 2016

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文