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


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...

面试题 相关文章推荐
解释一下ArrayList Vector和LinkedList的实现和区别
Apr 26 面试题
定义一结构体变量,用其表示点坐标,并输入两点坐标,求两点之间的距离
Aug 17 面试题
MySQL面试题
Jan 12 面试题
南京某软件公司的.net面试题
Nov 30 面试题
什么是动态端口(Dynamic Ports)?动态端口的范围是多少?
Dec 12 面试题
linux系统都有哪些运行级别
Apr 15 面试题
ShellScript面试题一则-ShellScript编程
Jun 24 面试题
JavaScript获取当前url根目录(路径)
Feb 19 面试题
MySQL面试题目集锦
Apr 14 面试题
为什么Runtime.exec(“ls”)没有任何输出?
Oct 03 面试题
关键字throw与throws的用法差异
Nov 22 面试题
如何通过jdbc调用存储过程
Apr 19 面试题
数据库基础的一些面试题
Feb 25 #面试题
试述DBMS的主要功能
Nov 13 #面试题
SQL数据库笔试题
Mar 08 #面试题
SQL面试题
Apr 30 #面试题
为数据库创建索引都需要注意些什么
Jul 17 #面试题
database面试题
Mar 28 #面试题
存储过程的优点有哪些
Sep 27 #面试题
You might like
php HtmlReplace输入过滤安全函数
2010/07/03 PHP
PHP中session变量的销毁
2014/02/27 PHP
PHP empty函数报错解决办法
2014/03/06 PHP
PHP实现根据图片色界在不同位置加水印的方法
2015/08/08 PHP
PHP的Yii框架中行为的定义与绑定方法讲解
2016/03/18 PHP
php reset() 函数指针指向数组中的第一个元素并输出实例代码
2016/11/21 PHP
php输出含有“#”字符串的方法
2017/01/18 PHP
PHP实现求解最长公共子串问题的方法
2017/11/17 PHP
Laravel 解决419错误 -ajax请求错误的问题(CSRF验证)
2019/10/25 PHP
转换json格式的日期为Javascript对象的函数
2010/07/13 Javascript
javascript下对于事件、事件流、事件触发的顺序随便说说
2010/07/17 Javascript
解决JS浮点数运算出现Bug的方法
2013/03/12 Javascript
Extjs 点击复选框在表格中增加相关信息行
2016/07/12 Javascript
微信小程序 开发之全局配置
2017/05/05 Javascript
让axios发送表单请求形式的键值对post数据的实例
2018/08/11 Javascript
ES6 Object属性新的写法实例小结
2019/06/25 Javascript
es6中比较有用的7个技巧小结
2019/07/12 Javascript
基于JS抓取某高校附近共享单车位置 使用web方式展示位置变化代码实例
2019/08/27 Javascript
jquery实现轮播图特效
2020/04/12 jQuery
React实现全选功能
2020/08/25 Javascript
Python中使用Inotify监控文件实例
2015/02/14 Python
Python sys.argv用法实例
2015/05/28 Python
解决Tensorflow使用pip安装后没有model目录的问题
2018/06/13 Python
Python 实现Windows开机运行某软件的方法
2018/10/14 Python
在Python中字典根据多项规则排序的方法
2019/01/21 Python
在OpenCV里实现条码区域识别的方法示例
2019/12/04 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
python如何查看安装了的模块
2020/06/23 Python
西班牙灯具网上商店:Lampara.es
2018/06/05 全球购物
汽车维修与检测专业应届生求职信
2013/11/12 职场文书
领导干部培训感言
2014/01/23 职场文书
党员先进事迹材料
2014/12/19 职场文书
员工工作能力评语
2014/12/31 职场文书
会计做账心得体会
2016/01/22 职场文书
2016年先进教师个人事迹材料
2016/02/26 职场文书
导游词之天下银坑景区
2019/11/21 职场文书