事务中可以有存储过程
存储过程中也可以有事务
事务是一系列的对数据库的操作,这些操作包括存储过程,更改误名及其它操作。
开始语句是begin transaction(事务开始);
结束语句有两种:一种是rollback(回滚);一个是commit提交事务的所有操作。
存储过程是实现一定功能的语句组成的程序段,可以包括事务,也可以在某事务当中。
例如:这是一个包括一个事务处理的存储过程,并且在事务中也包括另一个存储过程的操作:
create procedure myprocedure
as
begin transaction --开如一个事务
update tablename set ABC='dkdkd' wherer .....--操作
Exec otherprocedure '参数' --事务中包括的存储过程
If @@Error>0 --操作如果失败
begin
rollabck transaction --回滚
RaiseError('更改数据失败!',16,1)--向前台报错
Return --返回,不再继续执行
end
else
commit transaction --操作成功,确认所作修改
go