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

青岛网站制作开发热门网站建设招商项目

青岛网站制作开发,热门网站建设招商项目,公司官网用wordpress,杭州高端品牌网站建设事务概述 事务是一组操作的集合,他是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向西永提交或撤销操作请求。这组操作,要么全部执行成功,要么全部执行失败。 事务操作 查看/设置事务提交方式 -- 查看/设置事务…

事务概述

事务是一组操作的集合,他是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向西永提交或撤销操作请求。这组操作,要么全部执行成功,要么全部执行失败

事务操作

查看/设置事务提交方式

-- 查看/设置事务提交方式
SELECT @@autocommit;-- 查看事务的提交方式
SET @@autocommit=0; -- 0为手动提交事务,1为自动提交

提交事务

-- 提交事务 
COMMIT;

回滚事务

-- 如果事务出现异常我们就要进行回滚事务
ROLLBACK;

事务四大特性(ACID)

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

一致性(Consistency):事务完成时,必须使所有的数据都保持一致状态。

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

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

并发事务问题

在这里插入图片描述

脏读

一个事务读到另一事务还没有提交的数据。

事务A执行第一个操作,但是A事务执行操作完成的后还没有提交,此时B事务读取到了A事务还没有提交的操作。

在这里插入图片描述

不可重复读

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

事务A执行第一个select操作,事务B会执行update事务并提交,此时事务A执行第二次select操作,此时事务A执行的两次select操作时不一致的。

在这里插入图片描述

幻读

一个事务按照条件查询数据时,没有对应的数据行,但是在插入数据时,又发现这行数据已经存在。

事务A执行select操作,之后事务B执行insert操作后提交到数据库,此前事务A进行select没有查询到该数据之后要进行插入,插入时发现该数据已存在等问题(B事务此前进行的insert操作)。

在这里插入图片描述

事务的隔离级别

在这里插入图片描述

查看/设置事务的隔离级别

-- 查看事务的隔离级别
SELECT @@TRANSACTION_ISOLATION;
-- 设置事务的隔离级别为READ-UNCOMMITTED
SET [SESSION|GLOBAL] TRANSACTION ISOLATION LEVEL {READ UNCOMMITTED|READ COMMITTED|REPEATABLE READ|SERIALIZABLE} ;

READ-UNCOMMITTED(读取未提交): 最低的隔离级别,允许读取尚未提交的数据变更,可能会导致脏读、幻读或不可重复读。

READ-COMMITTED(读取已提交): 允许读取并发事务已经提交的数据,可以阻止脏读,但是幻读或不可重复读仍有可能发生。

REPEATABLE-READ(可重复读): 对同一字段的多次读取结果都是一致的,除非数据是被本身事务自己所修改,可以阻止脏读和不可重复读,但幻读仍有可能发生

SERIALIZABLE(可串行化): 最高的隔离级别,完全服从ACID的隔离级别。所有的事务依次逐个执行,这样事务之间就完全不可能产生干扰,也就是说,该级别可以防止脏读、不可重复读以及幻读


这里需要注意的是:

  • Mysql 默认采用的 REPEATABLE_READ隔离级别
  • Oracle 默认采用的 READ_COMMITTED隔离级别

事务隔离机制的实现基于锁机制和并发调度。其中并发调度使用的是MVVC(多版本并发控制),通过保存修改的旧版本信息来支持并发一致性读和回滚等特性。

因为隔离级别越低,事务请求的锁越少,所以大部分数据库系统的隔离级别都是READ-COMMITTED(读取提交内容)。但是InnoDB 存储引擎默认使用 **REPEATABLE-READ(可重读)**并不会有任何性能损失。

日常学习笔记,不喜勿喷,欢迎纠错与探讨!


http://www.yayakq.cn/news/284295/

相关文章:

  • 网站优化如何收费系统门窗品牌排行前十名
  • 什么软件可以做网站南宁网站推广方案如何做
  • 宁德市城乡建设网站广州越秀区天气预报
  • 服装网上商城网站建设报告android开发者网站
  • 做网站高流量赚广告费取消网站备案制度
  • 公司网站后如何更新深圳微信网站定制
  • wordpress外贸建站教程遵义网站seo
  • 上海定制网站开发小制作灯笼简单又漂亮
  • 3建网站建e网设计案例
  • 毕业生就业推荐表模板网站开发有了域名之后怎么做网站
  • 漳州建设项目公告网站企业网站建设与实现的论文
  • 合肥专业网站优化哪家好wordpress全静态化
  • 我要表白网站外贸网站样式
  • 网站搜索引擎优化的方法鞍山 中企动力提供网站建设
  • 展厅设计制作网站五大跨境电商平台对比分析
  • 企业营销策划 网站建设德阳市做网站
  • 贵州建设职业技术学院网站查成绩中国菲律宾最新消息
  • 网站审核备案表如何转换page到wordpress
  • html 音乐网站济宁十大外贸公司
  • 网站建设 定制商城 小程序开发六安搜索引擎优化方法
  • 邯郸个人网站建设搞笑图片制作在线生成器
  • 网站建设合同报价从用户角度网站应该具备的条件
  • 高端网站定制策划企业网站源码cms
  • 广东省网站免备案新出的网络游戏排行榜
  • 新能源网站开发wordpress图片延缓插件
  • 网站建设全包公司推荐外国好的设计网站大全
  • 外贸建设企业网站服务重庆制作网站首页
  • 如何建好一个网站重庆建设工程信息网注销账号怎么注销
  • 网站开发月薪校园网站建设标书
  • ps做网站字体用多大的百度网站开发语言