我创建了一个带有OnError事件处理程序的SSIS包,该处理程序在数据库中插入了一些日志记录。
当我通过批处理文件运行包时,我在批处理文件日志中看到包无法执行,因为与数据库的连接(与我插入错误日志的数据库不同)失败了。但是,没有插入日志记录(意味着OnError事件处理程序没有触发?)
当连接到数据库失败时,OnError事件处理程序是否未触发?
答案 0 :(得分:3)
找到它。整个软件包的 DelayValidation 属性必须设置为 True ,以便在运行之前不会执行连接管理器的验证(以及我认为的其他事情)时间
不会触发OnError事件处理程序,因为它仅适用于运行时。但是,预验证在运行时发生,并且当预验证发现其中一个与DB的连接不起作用时,程序包将失败
答案 1 :(得分:0)
FailPackageOnFailure
设置为True 虽然您可能不想永远保留第2步和第3步,但它们可以让您了解当前问题的最后部分。