sql-server - SSIS 包在部署 SQL Server 2012 后出现错误
问题描述
我在 Visual Studio 2015 中创建了一个包。它工作正常。
基本上我正在使用一个脚本任务来生成 Excel 电子表格并将其发送给不同的用户。
在我将包部署到 SQL Server 2012 并尝试从那里执行它之后 - 我收到一个错误,没有任何进一步的详细信息。
我还select * from internal.packages
从 SSISDB 运行以确保package_format_version
是 6,这应该是 SQL Server 2012。
可能是什么问题呢?
解决方案
这不一定是关于如何解决问题的答案,但它是关于如何修改脚本任务以获得更好的错误消息然后“脚本任务失败:抛出异常......”的答案
我们将始终将脚本任务包装在 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 包,当它在脚本任务上出错时,您不一定能清楚地表明它失败的原因,并且您会收到一条神秘的错误消息。上面的代码将捕获引发异常的原因并将其返回给集成服务。
推荐阅读
- eclipse-plugin - 自定义图形编辑器禁用另存为菜单
- javascript - 如何根据选定的单选按钮显示消息?
- indexing - 更改谷歌职位发布中应用按钮的文本(索引 api)
- c++ - 处理异常时内存泄漏
- oracle - Oracle Instant Client 仍然无法在 Mac OS Catalina 10.15.4 上运行
- docker - 当您将服务帐号分配给 Cloud Run 服务时,究竟会发生什么?
- mysql - 如何查看sys.statement_analysis的mysql 5.7的所有查询内容
- flutter - 如何将数组重新运行到列表视图颤动
- java - 正在从数据库中删除特定用户的所有通知,此时只应删除一个
- macos - 在 ~/.bash_profile 中导出环境变量会产生错误的值