当前位置: 首页 > news >正文

数据库—MySQL事务

1. 事务简介

1.1 什么是事务?

事务(Transaction) 是数据库操作的最小逻辑单元,用于将一系列数据库操作(如插入、更新、删除)组合成一个不可分割的原子性操作。事务的目的是确保数据的一致性完整性,即使在系统故障或并发操作时也能保持数据的正确性。


2. 事务的四大特性(ACID)

特性描述
原子性 (Atomicity)事务中的所有操作要么全部成功,要么全部失败回滚(通过 UNDO 日志实现)。
一致性 (Consistency)事务执行前后,数据库必须从一个一致状态转换到另一个一致状态(如约束、触发器)。
隔离性 (Isolation)并发事务之间互不干扰(通过锁机制或多版本控制实现)。
持久性 (Durability)事务提交后,对数据库的修改是永久性的(通过 REDO 日志实现)。

 3. 事务控制语句

-- 1. 开启事务
BEGIN;  -- 或 START TRANSACTION;-- 2. 提交事务(永久保存修改)
COMMIT;-- 3. 回滚事务(撤销未提交的修改)
ROLLBACK;-- 4. 设置保存点(部分回退)
SAVEPOINT savepoint_name;
ROLLBACK TO savepoint_name;

4. 事务的隔离级别

MySQL 支持四种隔离级别(默认为 REPEATABLE READ):

  • 脏读:读到其他事务未提交的数据。

  • 不可重复读:同一事务内两次读取同一数据结果不同。

  • 幻读:同一事务内两次查询返回的行数不同。


http://www.xdnf.cn/news/68851.html

相关文章:

  • 基于Python Socket的多线程聊天程序案例分析
  • 一页概览:虚拟机的备份
  • 一周学会Pandas2 Python数据处理与分析-Pandas2索引标签操作
  • 多模态大语言模型arxiv论文略读(三十三)
  • 实时进程简单说明
  • Vue-组件的懒加载,按需加载
  • Vue的模板语法——指令语法
  • OpenCV第5课 图像的基本操作
  • 模拟车辆变道 python 可视化
  • Redis——持久化
  • odoo-047 ValueError: 字段 `attachment_location` 不存在
  • 解锁编程新技能:深入理解泛型类型和函数
  • 【图像标注技巧】目标检测图像标注技巧
  • MySQL5.7 生成日期工具表
  • day2 python训练营
  • 智能照明系统:照亮智慧生活的多重价值
  • 华为盒式交换机堆叠配置
  • llama-webui docker实现界面部署
  • OpenCV 图形API(47)颜色空间转换-----将 I420(YUV 4:2:0) 格式的图像数据转换为 RGB 格式
  • 你学会了些什么220310?--接口压测调研
  • ThreadLocal的那些杂事
  • 2025.4.21日学习笔记 JavaScript String、Array、date、math方法的使用
  • spark—SQL3
  • [免费]SpringBoot+Vue博物馆(预约)管理系统【论文+源码+SQL脚本】
  • 华为数字化转型“三阶十二步法“:战略驱动、系统布局与敏捷落地的实践框架
  • 29个常见的Terraform 面试问题
  • <数据集>小船识别数据集<目标检测>
  • Python基础总结(九)之推导式
  • AI 赋能企业架构之路:五大关键路标点深度剖析
  • C++ 封装成DLL,C#调用