Day10-MySQL-事物

事物简介

事物 是一组操作的组合,他是一个不可分割的工作单位,事物会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败

事务操作

查看/设置事物提交方式

SELECT @@autocommit;

SET @@autocommit;

提交事务

COMMIT;

回滚事务

ROLLBACK;

开启事务

START TRANSACTION 或 BEGIN;

提交事务

COMMIT;

回滚事务

ROLLBACK;

事物四大特性(ACID)

原子性(Atomicity):事物是不可分割的最小操作单元,要么全部成功,要么全部失败

一致性(Consistency):十五万城市,必须使所有的数据都保持一致状态

隔离性(Isolation):数据库系统提供的隔离机制,保证十五再不受外部影响并发操作影响的独立环境下运行

持久性(Durability):事物一旦提交或回滚,它对数据库中的改变就是永久的

并发事务问题

脏读:一个事物读到另外一个事物还没有提交的数据

不可重复读:一个事物先后读取同一条记录,但两次读取的数据不同,称之为不可重复读

幻读:一个事务按照条件查询数据时,没有相应的数据行,但是在插入数据时,又发现这行数据已经存在,好像出现了"幻影"

事物隔离级别

--查看事物隔离级别

SELECT @@TRANSACTION_ISOLATION;

--设置事务隔离级别

SET [SESSION | GLOBAL] TRANSACTION LEVEL {READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE}

注意:事务隔离级别越高,数据越安全,但是性能越低

相关推荐
椰猫子3 分钟前
SpringMVC(SpringMVC简介、请求与响应(请求映射路径、请求参数、日期类型参数传递、响应json数据))
java·前端·数据库
2401_8822737210 分钟前
pattern属性在旧版Android浏览器无效怎么办_手动验证补充【操作】
jvm·数据库·python
小的~~18 分钟前
Milvus会存在SQL注入攻击吗?
数据库·sql·milvus
uElY ITER23 分钟前
MySQL官网驱动下载(jar包驱动和ODBC驱动)【详细教程】
数据库·mysql
NCIN EXPE24 分钟前
MySQL--》理解锁机制中的并发控制与优化策略
数据库·mysql·oracle
Nightwish532 分钟前
Linux随记(三十)
linux·运维·mysql·ambari
AI进化营-智能译站37 分钟前
ROS2 C++开发系列11-VS Code一键生成Doxygen注释|让ROS2节点文档自动跟上代码迭代
java·数据库·c++·ai
村头的猫43 分钟前
JWT 令牌的工作原理,结构和签名验证
前端·数据库·经验分享·微服务
许彰午44 分钟前
CacheSQL(四):CacheSQLClient——用一张路由表实现水平扩展
java·数据库·缓存·系统架构·政务
Lyyaoo.44 分钟前
缓存穿透/雪崩/击穿
数据库·缓存·oracle