栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

MySQL数据库事务

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MySQL数据库事务

什么是事务
多条sql语句,要么全部成功,要么全部失败。MySQL的事务是在存储引擎层实现。 MySQL的事务有ACID
A 原子性(atomicity):一个事务必须被视为一个不可分割的单元。
C 一致性(consistency):数据库是从一种状态切换到另一种状态。
I 隔离性(isolation):事务在提交之前,对于其他事务不可见。
D 持久性(durablity):一旦事务提交,所修改的将永久保存到数据库。
事务命令
事务开始:start transaction
事务开始:begin
事务提交:commit
事务回滚:rollback

编写事务开始需使用start transaction或begin编写

编写完内容只能在本机中查看

其他机中内容不变

只有在使用commit命令后才可在其他机中查看更改的内容

如果不想提交可以使用回滚rollback来撤销

查看自动提交模式是自动还是手动

事务有4种隔离级别 事务在提交之前对其他事务可不可见

  1. read uncommitted(未提交读)
  2. read committed(已提交读)
  3. Repeatable read(可重复读)
  4. serializable可串行化)

未提交读 事务中修改没有提交对其他事务也是可见的,俗称脏读

Session 设成
Transaction 事务
Isolation level 事务隔离等级

已提交读 多数数据库系统默认为此级别(MySQL不是)。已提交读级别为一个事务只能已提交事务所做的修改,也就是 解决了未提交读的问题

可重复读 解决了不可重复读的问题,数据库级别没有解决幻读的问题

可串行化 是最高隔离级别,强制事务串行执行,执行串行了也就解决问题了,这个I别只有在对数据一致性要求非常严格并且没有 并发的情况下使用

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/459488.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号