【发布时间】:2011-03-08 18:29:35
【问题描述】:
在 SSIS 2008 中,当 OLE DB 数据源返回类似“无法打开数据库 [xyz]。它正在恢复中。”这样的错误时,是否有办法设计 SSIS 包来解决该问题?
我希望有一种方法可以在 SSIS 2008 包中设计一个循环来捕获此错误,可能等待 5 或 10 分钟让源数据库完成恢复(例如从日志传送),然后再试一次 - 使用内置最大重试限制。
谢谢。
【问题讨论】:
在 SSIS 2008 中,当 OLE DB 数据源返回类似“无法打开数据库 [xyz]。它正在恢复中。”这样的错误时,是否有办法设计 SSIS 包来解决该问题?
我希望有一种方法可以在 SSIS 2008 包中设计一个循环来捕获此错误,可能等待 5 或 10 分钟让源数据库完成恢复(例如从日志传送),然后再试一次 - 使用内置最大重试限制。
谢谢。
【问题讨论】:
是的。连接时,不要连接到数据库。例如,在不同的连接对象中使用 master。
然后,查询sys.databases 中的状态列。如果不是0,请稍等,再试一次。
【讨论】: