[英]Multiple statements in SSIS Execute SQL Task
在我的SSIS包中,我有一个带有2条语句的Execute SQL Task。 基本上,它们是:
INSERT INTO table2 SELECT * FROM table1;
TRUNCATE TABLE table1
第一条语句失败(重复记录)。 但是table1现在是空的! 我会误解数据库的基本原理吗? 如果第一条语句失败,我希望整个批处理都将失败。
在执行报告中,有预期的错误消息:1.无法插入重复的键行。 2.该语句已终止。 可能的故障原因bla-bla
我的服务器是SQL Server 2012 SP2 CU1,OLEDB连接
我知道此表没有其他截断语句。 我疯了吗?
您需要捕获错误..
INSERT INTO table2 SELECT * FROM table1;
IF @@ERROR = 0
TRUNCATE TABLE table1
好的,经过一些测试,我确认这是预期的行为。 可能的解决方案包括:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.