事务:
一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行
事务的特性
ACID:
原子性:一个事务不可再分割,要么都执行要么都不执行
一致性:一个事务执行会使数据从一个一致状态切换到另一个一致状态
隔离性:一个事务的执行不受其他事物的干扰
持久性:一个事物一旦提交,则会永久的改变数据库的数据
事务的创建:
隐式事务:事务没有明显的开始和结束的标记
比如:insert、update、delete语句
delete from 表 where id=1;
显式事务:事务具有明显的开启和结束的标记
前提:必须先设置自动提交功能为禁用
set auto commit = 0;
步骤1:开启事务
set autocommit = 0;
start transaction;可选的
步骤2:编写事务中的sql语句(select、insert、update、delete)
语句1;
语句2;
步骤3:结束事务
commit;提交事务
roll back;回滚事务