当前位置:  开发笔记 > 数据库 > 正文

如何在Integration Services中手动使程序包失败?

如何解决《如何在IntegrationServices中手动使程序包失败?》经验,为你挑选了2个好方法。

我在我的SSIS包中运行了一个Execute SQL Task语句.执行SQL任务正在运行sql并检查表是否有超过1000行.如果它们的行数少于1000行,我想让包失败.

如何在SQL语句中强制失败?



1> Harper Shelb..:

AFAIK,SSIS中的任务因错误而失败.因此,如果您的执行SQL任务有一个类似的语句:

declare @count int
select @count = select count(*) from my_table
if @count < 1000
begin
    raiserror('Too few rows in my_table',16,1)
end
else
begin
    -- Process your table here
end

你应该得到你想要的结果.


raiserror('my_table中的行数太少,16,1)这就是诀窍!我想这不是一个SSIS问题而是更多的SQL问题.谢谢.

2> 小智..:

我喜欢使用脚本任务强制失败.这真的很容易.

1)添加脚本任务

2)更改自动生成代码的行:

Dts.TaskResult = (int)ScriptResults.Success; 

Dts.TaskResult = (int)ScriptResults.Failure;

你去吧!

推荐阅读
凹凸曼00威威_694
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有