概念

事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句(或函数调用)来界定。事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操作组成。

例如:在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序。

特性

  事务是恢复和并发控制的基本单位。

  事务应该具有4个属性:原子性、一致性、隔离性、持续性。这四个属性通常称为ACID特性。

  原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的操作要么都做,要么都不做。

  一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。

  隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。

  持久性(durability)。持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。

SQL——什么是事务?事务的特性有哪些?相关推荐

  1. mysql的事务隔离级别与锁的关系、sql日志、Spring事务的特性

    文章目录 数据库事务介绍 什么是事务的隔离级别? 脏读幻读不可重复读的示例? mysql默认的隔离级别 Mysql锁有哪些 for update 什么是间隙锁?(Next-Key) mysql的日志 ...

  2. MySQL数据库中的事务(四大特性)

    1. 事务的介绍 事务就是用户定义的一系列执行SQL语句的操作, 这些操作要么完全地执行,要么完全地都不执行, 它是一个不可分割的工作执行单元. 2. 事务的四大特性 原子性(Atomicity) 一 ...

  3. 数据库事务的四大特性以及事务的隔离级别

    本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别. 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity) 原子性是指事务 ...

  4. 怎么实现事务_你可能知道事务的四大特性,但是不一定知道“事务的实现原理”...

    说到数据库,那就一定会聊到事务,事务也是面试中常问的问题,我们先来一个面试场景: 面试官:"事务的四大特性是什么?"我:"ACID,即原子性(Atomicity).隔离性 ...

  5. Microsoft SQL Server中的事务(转载)

    1.1 事务的概念 事务是作为单个工作单元而执行的一系列操作,比如查询和修改数据等. 事务是数据库并发控制的基本单位,一条或者一组语句要么全部成功,对数据库中的某些数据成功修改; 要么全部不成功,数据 ...

  6. 数据库事务的四大特性ACID

    本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别. 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity) 原子性是指事务 ...

  7. 数据库事务的四大特性以及事务的隔离级别详解

    作者 : fjdingsd 来源 : 博客园 本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别. 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ ...

  8. SQL 存储过程入门(事务)

    本篇我们来讲一下事务处理技术. 为什么要使用事务呢,事务有什么用呢,举个例子. 假设我们现在有个业务,当做成功某件事情的时候要向2张表中插入数据,A表,B表,我们插入的顺序是先插入A,再插入B表,如果 ...

  9. 事务的四大特性、事务处理开始与结束、v$transactio、 v$LOCK

    数据库事务的四大特性:ACID 事务的4大特性(ACID): 原子性(Atomicity):事务是数据库的逻辑工作单位,它对数据库的修改要么全部执行,要么全部不执行.一致性(Consistemcy): ...

  10. mysql特性举例_MySQL事务的四大特性和隔离级别

    1.事务的四大特性(ACID) #### 1.1.原子性(Atomicity) 原子性是指事务包含的一系列操作要么全部成功,要么全部回滚,不存在部分成功或者部分回滚,是一个不可分割的操作整体. 1.2 ...

最新文章

  1. 【牛腩新闻发布系统】系统发布06
  2. linux恢复出厂设置_怎么恢复tp-link路由器出厂设置 恢复tp-link出厂设置方法【详解】...
  3. 安卓MediaPlayer框架之Binder机制
  4. Linux 查看CPU信息、机器型号等硬件信息
  5. vc mysql 图片_VC连接MySQL
  6. 设置访问权限_CentOS7利用Firewall对PostgreSQL设置安全的访问权限
  7. Android 获取唯一机器码的代码
  8. 关闭软件的同时,也关闭软件的进程
  9. 2017CV技术报告:从3D物体重建到人体姿态估计
  10. 2017年12月HCNP考试易错题汇总
  11. mac拷贝文件到u盘,mac拷贝文件到u盘很慢
  12. ubuntu19.04下VirtualBox与虚拟机win7共享文件夹
  13. 打造自己备份的系统镜像
  14. VSFTP一键部署脚本
  15. Cadence Allegro 如何添加Artwork光绘底片文件?
  16. 2007年大学生电子设计大赛国赛电源类题目设计报告
  17. 在学习计算机编程不写代码_使用代码创建:通过制作游戏来学习和教授计算机编程
  18. python除法有余数时+1
  19. 苹果加急审核App的办法
  20. 如何查看历史版本的Go文档?嘘!答案我只告诉你!

热门文章

  1. SaaS模式、技术与案例详解——第15章 SaaS平台的技术选型
  2. 构建安全可靠的微服务 | Nacos 在 SaaS 平台的应用实践
  3. P5535 【XR-3】小道消息
  4. 全息网御携OnFire产品亮相国家网络安全宣传周(内蒙站/甘肃站)
  5. [精品毕设] 基于Uniapp+SSM实现的安卓的掌上校园系统
  6. 关于sqlmap的一些命令
  7. [python]解析通达信盘后数据获取历史日线数据
  8. 九年级物理测试软件,九年级物理解读人教版
  9. 视频直播软件开发中关于极光用户修改 [头像、昵称] 的教程
  10. Composer 忽略版本