SQL Server重温 事务

2022-05-24 0 836

为什么使用事务

  当对多个表进行更新的时候,某条执行失败。为了保持数据的完整性,需要使用事务回滚。

显示设置事务


复制代码 代码如下:

begin try

begin transaction

insert into shiwu (asd) values (‘aasdasda’);

commit transaction

end try

begin catch

select ERROR_NUMBER() as errornumber

rollback transaction

end catch

隐式设置事务


复制代码 代码如下:

set implicit_transactions on; — 启动隐式事务

go

begin try

insert into shiwu (asd) values (‘aasdasda’);

insert into shiwu (asd) values (‘aasdasda’);

commit transaction;

end try

begin catch

select ERROR_NUMBER() as errornumber

rollback transaction; –回滚事务

end catch

set implicit_transactions off; –关闭隐式事务

go

显示事务以下语句不能使用,隐式事务可以


复制代码 代码如下:

alter database;

backup;

create database;

drop database;

reconfigure;

restore;

update statistics;

显示事务可以嵌套使用


复制代码 代码如下:

–创建存储过程

create procedure qiantaoProc

@asd nchar(10)

as

begin

begin try

begin transaction innerTrans

save transaction savepoint –创建事务保存点

insert into shiwu (asd) values (@asd);

commit transaction innerTrans

end try

begin catch

rollback transaction savepoint –回滚到保存点

commit transaction innerTrans

end catch

end

go

begin transaction outrans

exec qiantaoProc ‘asdasd’;

rollback transaction outrans

事务嵌套,回滚外层事务时,如果嵌套内的事务已经回滚过则会有异常。此时需要使用事务保存点。如上代码。

免责声明:
1、本网站所有发布的源码、软件和资料均为收集各大资源网站整理而来;仅限用于学习和研究目的,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。 不得使用于非法商业用途,不得违反国家法律。否则后果自负!

2、本站信息来自网络,版权争议与本站无关。一切关于该资源商业行为与www.niceym.com无关。
如果您喜欢该程序,请支持正版源码、软件,购买注册,得到更好的正版服务。
如有侵犯你版权的,请邮件与我们联系处理(邮箱:skknet@qq.com),本站将立即改正。

NICE源码网 MsSql SQL Server重温 事务 https://www.niceym.com/60788.html