中国开发网: 论坛: 程序员情感CBD: 贴子 571651
haitao
查到一个以前的讨论。。。。。。。。。好像delphi的ado执行sql遇到错误后,还会继续执行的??
【 象你这样执行系列语句的,可以两种方法
1、要用ado的事物处理的话,就分开执行,每次执行单个语句,上面已经讲到很多了
2、用sql server的事物处理,在SQL语句中用事务就可以,ado就不用加事物处理了:

begin tran --开始事物
update ....--(单条语句)
if @@error <> 0 --捕获错误
rollback tran --回滚
....反复执行,每条语句如上错误处理
commit tran --没有错误,则提交事物

如果不能继续执行,后续的“if @@error<>0 回滚”都不会被执行了。。。。。。。

但是我的试验是,出错的sql后面的insert就不会被执行了。。。。。。。

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录