SQL server从入门精通---- 事务
时间:2021-07-01 10:21:17
帮助过:2人阅读
-----------事务--------------
--我的理解(执行几条语句时,只要有一条语句执行不成功,其他的语句都不够被执行)
--事务:将多个操作当做一个独立的逻辑单元的执行方式为事务------
--特点:多个操作只有在都执行成功时才算成功,只要有一个执行失败那应该整体就属于失败,成功了可以提交,失败了可以回滚
语法
begin transaction tr_insert
--开始事物(名称随便取
begin try
insert into Q_user(uLogName)
values(
‘dsf‘)
insert into Q_user(uLogName)
values(
‘dsf‘)
--违反了 UNIQUE KEY 约束“UQ__Q_user__07E32C94386667D8”。不能在对象“dbo.Q_user”中插入重复键。重复键值为 (dsf)。会报错
--全部成功提交事务
commit tran tr_insert
--这里的名字
end try
begin catch
--报错获取异常回滚语句块
rollback tran
end catch
select * from Q_user
create proc execTran
@sql1 nvarchar(
1000),
@sql2 nvarchar(
1000),
@rtn nvarchar(
1000) output
as
begin tran tr_exec2
begin try
exec @sql1
exec @sql2
set @rtn=‘success‘
commit tran execTran
end try
begin catch
set @rtn=@@ERROR
rollback tran tr_exec2
end catch
go
drop proc execTran
declare @rtn nvarchar(
100)
exec execTran
‘insert into Q_user values(,,,,,,,,)‘,
‘sql2‘,
@rtn output
print @rtn
SQL server从入门精通---- 事务
标签: