我在Visual Studio 2015中创建了一个程序包。它工作正常。
基本上,我正在使用脚本任务来生成Excel电子表格并将其发送给其他用户。
将程序包部署到SQL Server 2012之后,尝试从那里执行它-我收到一条错误,没有任何其他详细信息。
我还从SSISDB运行select * from internal.packages
,以确保package_format_version
为6,这对于SQL Server 2012应该是这样。
可能是什么问题?
答案 0 :(得分:3)
这不一定是解决问题的答案,而是关于如何修改脚本任务以获得更好的错误消息的答案,然后出现“脚本任务失败:已引发异常...” < / p>
我们将始终将脚本任务包装在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软件包而言,当它在脚本任务中出错时,您不一定会清楚地知道失败的原因,并且会收到一条隐含的错误消息。上面的代码将捕获引发异常的原因,然后将其回泡到集成服务中。
答案 1 :(得分:-1)
您可能要确保在SSIS服务器上安装了“ Microsoft Access Database Engine 2010可再发行组件”驱动程序。您可以here获得它。