【问题标题】:SSIS Execute SQL Task needs to ignore error on DROP TABLESSIS 执行 SQL 任务需要忽略 DROP TABLE 上的错误
【发布时间】:2019-10-04 15:25:12
【问题描述】:

我刚刚开始使用 SQL Server 2016 的 SSIS。我试图在创建新表之前简单地删除表,并且我在数据流任务之前使用执行 SQL 任务作为创建新表的第一步桌子。我收到该对象不存在的错误。看起来这在 SSIS 中是一件很常见的事情,我已经阅读了许多关于这个特定任务的 SO 帖子,但到目前为止还没有关于如何忽略错误的内容。我期待看到一个允许忽略错误的 Execute SQL 属性,或者一个错误连接器,或者类似的东西。我错过了此任务中的某些内容,还是在尝试创建新表之前确保表不存在的错误方法?

【问题讨论】:

    标签: ssis sql-server-2016


    【解决方案1】:

    您可以在 EXECUTE SQL 任务中使用drop if exists 语法:

    DROP TABLE IF EXISTS tab_name; -- supported starting from SQL Server 2016
    

    【讨论】:

    • 谢谢。这真的很好用,现在我正在学习 SQL Server 2016 中的新 DIE 语句。
    • 如果这回答了问题,@MarkF,请将其标记为解决方案。它可以帮助将来有同样问题的其他人。
    【解决方案2】:

    或者,将控制流箭头从成功更改为完成:

    1. 右键单击来自删除表的执行 T-SQL 任务的绿色箭头。
    2. 单击完成。箭头将变为黑色。

    【讨论】:

    • 这实际上很有帮助,我不记得在 SSIS 课程材料中阅读过有关此功能的内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-17
    • 2010-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多