【SQL】事务回滚
事务(Transaction)是并发控制的单位,是用户定义的一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位。通过事务,SQL Server能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性
1.创建表
Create table tUser
(
UserCode varchar(50),
UserName varchar(50),
UserDuty varchar(50),
UserTel varchar(100)
);
2.事务回滚方法一:(记录错误条数)
declare @ErrorSum int
SET @ErrorSum=0
begin transaction
insert into tUser(UserCode,UserName,UserDuty,UserTel)
values('10000','张三','软件工程师','18469878542')
set @ErrorSum=@ErrorSum+@@ERROR
insert into tUser(UserCode,UserName,UserDuty,UserTel)
values('10001','王超群','软件工程师','13459687965')
set @ErrorSum=@ErrorSum+@@ERROR
if @ErrorSum=0
begin
COMMIT
end
else
begin
ROLLBACK
end
查询数据:
select * from tUser
3.事务回滚方法二:(捕获异常)
begin try
begin transaction
insert into tUser(UserCode,UserName,UserDuty,UserTel)
values('10002','李泽','测试工程师','15248963874')
insert into tUser(UserCode,UserName,UserDuty,UserTel)
values('10003','李志伟','项目工程师','13985478536')
COMMIT TRANSACTION
END TRY
BEGIN CATCH
ROLLBACK
END CATCH
查询数据:
select * from tUser
最新文章
- ZOJ Problem Set - 1240 IBM Minus One
- Intellij Idea上传本地项目到Git
- Arch命令行与安装包
- 创建 iPhone/iOS8 弹出菜单(窗口)
- 常用的HTTP协议
- C#的Timer
- win7 64位下jboss配置
- cobbler客户端重装系统
- 【汇编语言】DEBUG的使用
- Response.AddHeader
- firefox被hao123绑架的解决办法
- Java相关错误
- oracle ORA-00119, ORA-00132问题解决
- 在window系统上安装redis服务-Invalid argument during startup: Failed to open the .conf
- DNS区域传送、子域授权
- .net core 2.0 Autofac
- Windows下VMware14黑屏
- c# 适配器批量修改
- luogu P4314 CPU监控
- 2018牛客网暑假ACM多校训练赛(第五场)H subseq 树状数组
热门文章
- 分布式系统理论基础2 :CAP
- ubuntu 18.04 自启动
- 二级域名解析设置及Apache 子域名配置
- myCat读写分离+传统主从
- VMware新建虚拟机之后的初始化工作
- vmware安装minimal centos报错/etc/rc5.d/s99local : line:25 : eject : command not found
- 推荐一款 MyBatis 开发神器,为简化而生!
- 数据概览神器pandas_profiling
- MySql常见的错误
- go之linux安装