SSIS OnError 事件处理程序不会在数据库连接失败时触发

rab*_*ana 0 sql-server ssis

我创建了一个带有 OnError 事件处理程序的 SSIS 包,该处理程序在数据库中插入一些日志记录。

当我通过批处理文件运行该包时,我在批处理文件日志中看到该包无法执行,因为与数据库(与我插入错误日志的数据库不同)的连接失败。但是,没有插入日志记录(意味着 OnError 事件处理程序没有触发?)

当连接到数据库失败时,OnError 事件处理程序不会触发吗?

rab*_*ana 5

找到了。整个包的DelayValidation属性必须设置为True,以便连接管理器的验证(以及我认为的其他内容)在运行时之前不执行

OnError 事件处理程序不会被触发,因为它只在运行时起作用。但是,预验证发生在运行时之前,并且当预验证发现与数据库的连接之一不起作用时,包会失败