事务就是一组DML(数据操纵语言)语句组成,这些语句在逻辑上存在相关性,这一组DML语句要么全部成功,要么全部失败,是一个整体。事务还规定不同的客户端看到的数据是不相同的。
事务的一些基本操作
- 开始一个事务
start transaction;
- 创建一个保存点
savepoint 保存点名;
- 回到保存点
rollback to 保存点名;
例:
我们先创建一个测试表:
create table account(
-> id int primary key,
-> name varchar(50) not null default ' ',
-> balance decimal(10,2) not null default 0.0
-> );
mysql> start transaction; ----开启一个事务
Query OK, 0 rows affected (0.00 sec)
mysql> savepoint aa;-----设置保存点aa
Query OK, 0 rows affected (0.00 sec)
mysql> insert into account values(1,'张三',10);----添加一条记录
Query OK, 1 row affected (0.01 sec)
mysql> savepoi