1、事务的概念
在多个操作的SQL语句当中,要么同时成功执行,要么同时失败执行。
2、操作步骤:
A.开启事务 START TRANSACTION
B.回滚(出问题了,需要回到开启事务之前) ROLLBACK
C.提交(正常执行,将改变的数据提交结束事务) COMMIT
3、查看和修改事务的提交方式
A.查看事务的提交方式
SELECT @@autocommit;
B.修改事务的提交方式
SET @@autocommit = 0; -- 0表示手动提交,1表示自动提交
4、事务的四大特征
A.原子性: 在事务的多个SQL语句当中,不可以分割开来
B.持久性: 发生回滚和提交的时候,数据持久的保存在硬盘上面
C.隔离性: 尽可能的多个事务之间没有影响
D.一致性: 事务前后的总量不能改变
5、隔离级别
A.存在问题
a.脏读:事务X读取到事务Y,未提交的数据.
b.虚读(不可重复读):在同一个事务当中,两次读取的数据不一样。
c.幻读:事务X在操作数据库当中所有的记录,事务Y在添加一条新的 记录。事务X读取不到自己的修改
B.对应的级别
a. READ UNCOMMITED 读未提交 (出现"脏读","虚读","幻读")
b. READ COMMITED 读提交 (出现"虚读","幻读") ---> Oracle 默认采用
c. REPEATABLE READ 可重复读 (出现"幻读") ---> MySQL 默认采用
d. SERIALIZABLE 串行化 (可以解决所有问题,效率低)
C.设置和查看隔离级别
a.查看隔离级别 SELECT @@TX_ISOLATION;
b.设置隔 SET GLOBAL TRANSACTION ISOLATION LEVEL 级别字符串;
MySQL事务介绍
最新推荐文章于 2025-09-05 17:29:15 发布
