sql server存储过程回滚事务

SET NOCOUNT ON这个很常用

作用:阻止在结果集中返回显示受T-SQL语句或则usp影响的行计数信息。

当SET ONCOUNT ON时候,不返回计数,当SET NOCOUNT OFF时候,返回计数;即使当SET NOCOUNT ON 时候,也更新@@RowCount;当SET NOCOUNT on时候,将不向客户端发送存储过程每个语句的DONE_IN_proc消息,如果存储过程中包含一些并不返回实际数据的语句,网络通信流量便会大量减少,可以显著提高应用程序性能;

SET XACT_ABORT ON--sql事物回滚
BEGIN TRAN   --开始事物

IF NOT EXISTS(SELECT TOP 1 1 FROM 表 WHERE cserviceno=@cserviceno) --过程,提前有返回值必须这样写

BEGIN ROLLBACK TRAN

RETURN 338  

END

IF @@ERROR<>0   --结尾
BEGIN ROLLBACK TRAN
RETURN 0
END
ELSE
BEGIN COMMIT TRAN
RETURN 100
END

 

posted @ 2018-09-22 11:27  世人皆萌  阅读(2946)  评论(0编辑  收藏  举报