如何继续Foreach循环,尽管服务器连接
问题描述:
我已经构建了一个在foreachloop容器内具有数据流任务的SSIS包。数据任务具有ole db源和ole db目标。 foreachloop容器外部的开始部分将是一个执行sql任务,它将提供服务器名称列表。如果我的服务器不在线或因任何原因无法连接,我的foreach循环应忽略它并继续检查下一个可用的服务器。我还希望这个包在目标表中填充一个特定的字段,如果找到了连接,则填充1,如果找不到连接,则填充0。如果找不到连接,我想发送电子邮件提醒。如何继续Foreach循环,尽管服务器连接
答
在执行SQL任务上放置一个OnError处理程序。在这里你可以更新你的1/0表,并为你的电子邮件正文建立一个字符串变量。
然后将执行SQL任务的“FailOnError”属性设置为false,以便该包无论如何都能继续运行。
Execute SQL任务执行的唯一操作是从存储过程返回服务器名称。错误发生在数据流任务内部,这是程序包搜索服务器连接的原因。 – User812372
对不起,我误解了问题的这一部分。然后你应该在DataFlow任务上放置OnError处理程序。 –
那么当包发生连接失败时,我会用什么来更新表?我必须为失败的实例提供另一个途径吗?只是不知道这个 – User812372