首页 > 解决方案 > SSIS 包在部署 SQL Server 2012 后出现错误

问题描述

我在 Visual Studio 2015 中创建了一个包。它工作正常。

基本上我正在使用一个脚本任务来生成 Excel 电子表格并将其发送给不同的用户。

在我将包部署到 SQL Server 2012 并尝试从那里执行它之后 - 我收到一个错误,没有任何进一步的详细信息。

在此处输入图像描述

我还select * from internal.packages从 SSISDB 运行以确保package_format_version是 6,这应该是 SQL Server 2012。

在此处输入图像描述

可能是什么问题呢?

标签: sql-serverssisssis-2016

解决方案


这不一定是关于如何解决问题的答案,但它是关于如何修改脚本任务以获得更好的错误消息然后“脚本任务失败:抛出异常......”的答案

我们将始终将脚本任务包装在 try-catch 中,然后从脚本任务中引发异常消息:

    public void Main()
    {
        try
        {

            //Your code here

            Dts.TaskResult = (int)ScriptResults.Success;
        }
        catch (Exception ex)
        {
            Dts.Events.FireError(-1, "", ex.Message, String.Empty, 0);
            Dts.TaskResult = (int)ScriptResults.Failure;
        }
    }

这始终是一个挑战,尤其是对于已部署的 SSIS 包,当它在脚本任务上出错时,您不一定能清楚地表明它失败的原因,并且您会收到一条神秘的错误消息。上面的代码将捕获引发异常的原因并将其返回给集成服务。


推荐阅读