Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SSIS执行SQL任务需要忽略删除表上的错误_Ssis_Sql Server 2016_Ignore - Fatal编程技术网

SSIS执行SQL任务需要忽略删除表上的错误

SSIS执行SQL任务需要忽略删除表上的错误,ssis,sql-server-2016,ignore,Ssis,Sql Server 2016,Ignore,我刚刚开始学习2016年SQL Server SSIS。我试图在创建新表之前简单地删除表,并且在数据流任务创建新表之前,我使用执行SQL任务作为第一步。我得到一个错误,该对象不存在。在SSIS中,这似乎是一件非常常见的事情,我已经阅读了很多关于这个特定任务的文章,但到目前为止,还没有任何关于如何忽略错误的内容。我希望看到一个允许忽略错误的executesql属性,或者一个错误连接器,或者类似的东西。此任务中是否有我遗漏的内容,或者这是在尝试创建新表之前确保表不存在的错误方法?您可以在执行SQL任

我刚刚开始学习2016年SQL Server SSIS。我试图在创建新表之前简单地删除表,并且在数据流任务创建新表之前,我使用执行SQL任务作为第一步。我得到一个错误,该对象不存在。在SSIS中,这似乎是一件非常常见的事情,我已经阅读了很多关于这个特定任务的文章,但到目前为止,还没有任何关于如何忽略错误的内容。我希望看到一个允许忽略错误的executesql属性,或者一个错误连接器,或者类似的东西。此任务中是否有我遗漏的内容,或者这是在尝试创建新表之前确保表不存在的错误方法?

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

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

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

  • 右键单击删除表的执行T-SQL任务中的绿色箭头
  • 单击完成。箭头将变成黑色

  • 这实际上非常有帮助,我不记得在SSIS课程材料中读过关于此功能的内容。谢谢。这非常有效,现在我正在学习SQL Server 2016中的新DIE语句。如果这回答了问题,@MarkF,请将其标记为解决方案。它可以帮助将来有同样问题的人。