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

承德网站制作十大接单推广app平台

承德网站制作,十大接单推广app平台,wordpress主题+插件下载,专门做机器人的网站本文主要介绍MySQL事务 文章目录 前言事务定义事务四大特性(ACID) 事务操作事务并发问题事务隔离级别 前言 参考链接: 链接1链接2 事务定义 事务是一组操作的集合,他是一个不可分割的工作单位,事务会把所有的操作作…

本文主要介绍MySQL事务

文章目录

  • 前言
    • 事务定义
    • 事务四大特性(ACID)
  • 事务操作
  • 事务并发问题
  • 事务隔离级别

前言

参考链接:

  • 链接1
  • 链接2

事务定义

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

MySQL默认事务是自动提交的,也就是当执行一条DML(数据操作语言)时,MySQL会马上隐式的提交事务。

事务四大特性(ACID)

  • 原子性(Atomicity):事务是不可分割的最小操作单元,要么全部成功,要么全部失败
  • 一致性(Consistency):事务完成时,必须使所有的数据都保持一致状态
  • 隔离性(Isolation):数据库系统提供的隔离机制,保证事务在不受外部并发操作影响的独立环境下运行
  • 持久性(Durability):事务一旦提交或回滚,它对数据库中的数据的改变就是永久的。

事务操作

#表准备
drop table if exists account; 
create table account( id int primary key AUTO_INCREMENT comment 'ID', name varchar(10) comment '姓名', money double(10,2) comment '余额' ) comment '账户表'; 
insert into account(name, money) VALUES ('张三',2000), ('李四',2000);

基本操作:

-- 1. 查询张三账户余额
select * from account where name = '张三';-- 2. 将张三账户余额-1000
update account set money = money - 1000 where name = '张三';
-- 此语句出错后张三钱减少但是李四钱没有增加
模拟sql语句错误-- 3. 将李四账户余额+1000
update account set money = money + 1000 where name = '李四';-- 查看事务提交方式
SELECT @@AUTOCOMMIT;-- 设置事务提交方式,1为自动提交,0为手动提交,该设置只对当前会话有效
SET @@AUTOCOMMIT = 0;-- 提交事务
COMMIT;-- 回滚事务
ROLLBACK;-- 设置手动提交后上面代码改为:
select * from account where name = '张三';
update account set money = money - 1000 where name = '张三';
update account set money = money + 1000 where name = '李四';
commit;

操作方式二:
开启事务:
START TRANSACTION 或 BEGIN TRANSACTION;
提交事务:
COMMIT;
回滚事务:
ROLLBACK;

操作实例:

start transaction;
select * from account where name = '张三';
update account set money = money - 1000 where name = '张三';
update account set money = money + 1000 where name = '李四';
commit;

事务并发问题

在这里插入图片描述

事务隔离级别

高一级的级别提供更强的隔离性。标准允许事务运行在更强的事务隔离级别上。(如在可重复读(REPEATABLE READ)隔离级别上执行提交读(READ COMMITTED)的事务是没有问题的)。

在这里插入图片描述

  • √表示在当前隔离级别下该问题会出现
  • Serializable 性能最低;Read uncommitted 性能最高,数据安全性最差
#查看事务隔离级别
SELECT @@TRANSACTION_ISOLATION;#设置事务隔离级别
SET [SESSION|GLOBAL] TRANSACTION ISOLATION LEVEL {READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE}
http://www.yayakq.cn/news/813901/

相关文章:

  • 深圳城市规划设计研究官方网站安徽方圆建设有限公司网站
  • 怎样用linux做网站温州网站设计
  • 怎么建设一个区块链资讯网站四川绵阳网站建设
  • 上海网站建设 美橙分类目录采用的是
  • 手机app界面设计优秀作品网站关键词优化难不难
  • 广州网页设计机seo 工具
  • 西安淘宝网站建设公司排名南宁做网站公司品牌云尚网络
  • 多个域名的网站wordpress版权说明
  • 摄影网站源码 免费下载在线证件照生成器
  • 一个企业网站建设需要多长时间想建设个网站卖东西
  • 创意灵感网站网站服务器租用售价
  • 模板建站是什么域名注册网站系统
  • 网站可以不进行icp备案吗网站建设工程师面试对自己的前景规划
  • 兰州专业做网站做水印的网站
  • 建站公司咨询dede网站开发步骤
  • 重庆网站推广公司哪家好中国互联网网站性能
  • 沈阳做网站 0诚金网络专业移动电商网站开发需求
  • 手机网站域名如何解析12380网站建设存在的问题
  • 东莞市做网站的防水自己如何建设网站
  • 台州网站排名优化价格网站 后台 数据 下载
  • 售房网站开发 .net解析软件的网站
  • 自己怎么注册网站长春网页制作建站
  • 学校电脑课做网站的软件seo模拟点击有用吗
  • 怎么网站搜索排名优化wordpress如何修改页脚
  • 站长统计app网站公司排行榜前十名
  • 免费网站的软件对网站开发的理解500字
  • 做饼干的网站北京到安阳高铁时刻表
  • 建设一个电影网站怎么做网页设计模板html代码ie
  • 蒙古文网站建设的通知展厅布置摆放设计公司
  • 网站特色分析各种浏览器网站大全