前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >三十一、事务控制

三十一、事务控制

作者头像
喵叔
发布2022-05-06 18:28:02
2620
发布2022-05-06 18:28:02
举报
文章被收录于专栏:喵叔's 专栏
一、什么是事务控存储

事务是指作为一个逻辑工作单元执行的一些列操作,这些操作要么全部成功,要么全部失败。事务确保对多个数据的修改作为一个单元来处理。

  1. 在 MySQL 中,只有使用了 Innodb 存储引擎的数据库或表才支持事务;
  2. 事务用于维护数据库的完整性,保证成批的 sql 语句要么都执行,要么都不执行;
  3. 事务用于管理 INSERT、UPDATE、DELETE 语句。
二、事务的四个特性

如果某个数据库声称支持事务,那么该数据库必须具备 ACID 四个特性,即 Atomicity(原子性)、Consistency (一致性)、 Isolation (隔离性) 和 Durability (持久性)。

  1. 原子性:事务必须是原子工作单元,事务中包含的个操作要么都做,要么都不做。
  2. 一致性:事务在执行完成时,必须使所有的数据都保持一致状态。
  3. 隔离性:事务独立运行,多个事务之间相互隔离互不干扰。事务的100%隔离会牺牲速度。
  4. 持久性:事务执行完成后,它对系统的影响是永久性的。
三、MySQL 的事务控制

在默认情况下, MySQL 是自动提交事务的,即每一条 INSERT、UPDATE、DELETE SQL 语句提交后会立即执行 COMMIT 操作。因此要开启一个事务,可以使用 start transaction 或 begin ,或者将 autocommit 的值设为 0 。常见事务语法如下:

代码语言:javascript
复制
# 开启事务
begin
# 提交事务
commit;
# 回滚事务
rollback;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-06-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、什么是事务控存储
  • 二、事务的四个特性
  • 三、MySQL 的事务控制
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档