haitao:
查到一个以前的讨论。。。。。。。。。好像delphi的ado执行sql遇到错误后,还会继续执行的??
[阅读: 682] 2007-10-12 07:48:44
【 象你这样执行系列语句的,可以两种方法
1、要用ado的事物处理的话,就分开执行,每次执行单个语句,上面已经讲到很多了
2、用sql server的事物处理,在SQL语句中用事务就可以,ado就不用加事物处理了:
begin tran --开始事物
update ....--(单条语句)
if @@error <> 0 --捕获错误
rollback tran --回滚
....反复执行,每条语句如上错误处理
commit tran --没有错误,则提交事物
】
如果不能继续执行,后续的“if @@error<>0 回滚”都不会被执行了。。。。。。。
但是我的试验是,出错的sql后面的insert就不会被执行了。。。。。。。