什么是事务?为什么需要事务?


Posted in 面试题 onJanuary 09, 2012
事务是由一组必须要同时完成的或者同时取消的操作组成的,事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句(或函数调用)来界定。事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操作组成。
事务应该具有4个属性:原子性、一致性、隔离性、持续性。这四个属性通常称为ACID特性。
原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。
一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
持久性(durability)。持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。

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

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

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

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

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

Tags in this post...

面试题 相关文章推荐
PHP经典面试题
Sep 03 面试题
error和exception有什么区别
Oct 02 面试题
如何实现jdbc性能优化
Jul 30 面试题
Sony C++笔试题
Mar 10 面试题
ORACLE十问
Apr 20 面试题
用友笔试题目
Oct 25 面试题
Does C# support multiple inheritance? (C#支持多重继承吗)
Jan 04 面试题
常用UNIX 命令(Linux的常用命令)
Jul 10 面试题
介绍一下EJB的分类及其各自的功能及应用
Aug 23 面试题
主要的Ajax框架都有什么
Nov 14 面试题
Python里面如何拷贝一个对象
Feb 17 面试题
Java里面Pass by value和Pass by Reference是什么意思
May 02 面试题
数据库基础的一些面试题
Feb 25 #面试题
试述DBMS的主要功能
Nov 13 #面试题
SQL数据库笔试题
Mar 08 #面试题
SQL面试题
Apr 30 #面试题
为数据库创建索引都需要注意些什么
Jul 17 #面试题
database面试题
Mar 28 #面试题
存储过程的优点有哪些
Sep 27 #面试题
You might like
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
2007/01/29 PHP
php学习之 认清变量的作用范围
2010/01/26 PHP
Display SQL Server Version Information
2007/06/21 Javascript
javascript显示隐藏层比较不错的方法分析
2008/09/30 Javascript
关于include标签导致js路径找不到的问题分析及解决
2013/07/09 Javascript
JQuery做的一个简单的点灯游戏分享
2014/07/16 Javascript
jquery bind(click)传参让列表中每行绑定一个事件
2014/08/06 Javascript
在css加载完毕后自动判断页面是否加入css或js文件
2014/09/10 Javascript
JS两种类型的表单提交方法实例分析
2016/11/28 Javascript
javascript 产生随机数的几种方法总结
2017/09/26 Javascript
详解node child_process模块学习笔记
2018/01/24 Javascript
JavaScript设计模式之代理模式简单实例教程
2018/07/03 Javascript
JS判断用户用的哪个浏览器实例详解
2018/10/09 Javascript
JS滚轮控制图片缩放大小和拖动的实例代码
2018/11/20 Javascript
javascript中layim之查找好友查找群组
2021/02/06 Javascript
[03:03]2014DOTA2国际邀请赛 EG战队专访
2014/07/12 DOTA
[02:57]DOTA2亚洲邀请赛小组赛第四日 赛事回顾
2015/02/02 DOTA
linux下python抓屏实现方法
2015/05/22 Python
python重试装饰器的简单实现方法
2019/01/31 Python
Python使用reportlab模块生成PDF格式的文档
2019/03/11 Python
numpy求平均值的维度设定的例子
2019/08/24 Python
40行Python代码实现天气预报和每日鸡汤推送功能
2020/02/27 Python
一文读懂Python 枚举
2020/08/25 Python
Python Map 函数的使用
2020/08/28 Python
html5理解head_动力节点Java学院整理
2017/07/13 HTML / CSS
英国领先的在线药房:Pharmacy First
2017/09/10 全球购物
iKRIX意大利网上商店:男女豪华服装和配件
2019/10/09 全球购物
META-INF文件夹中的MANIFEST.MF的作用
2016/06/21 面试题
UNIX文件类型
2013/08/29 面试题
会计助理的岗位职责
2013/11/29 职场文书
行政总经理岗位职责
2013/12/05 职场文书
个人合作协议书范本
2014/04/18 职场文书
2014年扶贫工作总结
2014/11/18 职场文书
毕业生就业推荐表自我评价
2015/03/02 职场文书
2015年业务员工作总结范文
2015/04/07 职场文书
上班旷工检讨书
2015/08/15 职场文书