数据库理论(2)之数据库事务

转载 2016年08月31日 16:45:51
事务时是指用户在进行数据库操作时的一个数据库操作序列。对于该操作序列中的操作,要么全部执行,要么全都不执行,所有的操作都是一个整体,不可分割。

1、事务的概念
事务是一个操作集合,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。
典型的例子就像从网上银行系统的帐户A转帐到帐户B,它经过两个阶段:a.从帐户A取出款项。b.把款项放入帐户B中。这两个过程要么同时成功,要么同时失败,这一系列的操作就被称为事务性(Transactional)操作。
与事务相关的概念有:事务提交和事务回滚。
事务提交:将事务中对数据的更新提交到数据库中,如果执行正常则事务结束,否则发生异常时,事务将回滚,将数据库状态还原到事务提交之前的状态。
事务回滚:主要发生于事务提交失败的情况下,中止事务并还原数据库状态。

2、事务的特性
事务具有4个特性:简称ACID特性。
a、原子性(Atomicity):当事务结束的时候,所有的资源状态都被视为一个操作,这个操作要不同时成功,要不同时失败。
b、一致性(Consistency):操作完成后,所有数据必须符合业务规则,否则事务必须中止。因此,数据中只包含事务提交成功的结果,这时事务处于一致性状态中。如果在提交事务时,因故障而中止,这些未完成的事务可能有些数据修改已经执行,而有些数据还没有执行,这时数据库处于不一致状态。
c、隔离性(Isolation):事务以相互隔离的方式执行,事务以外的实体无法知道事务过程中的中间状态。
d、持续性(Durability):事务一旦提交,其对数据库中的数据改变是永久的。

3、事务的特性被破坏的原因
a、多个事务并发运行,事务之间的操作交叉执行;
b、事务在执行的过程中被强行中止。

相关文章推荐

数据库事务解析最清楚(2)

本文系转载,原文地址:http://singo107.iteye.com/blog/1175084 数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read co...

好记性不如烂笔头24-JAVA处理数据库事务(2) - 脏数据

读“脏”数据是指事务T1修改某一数据,并将其写回磁盘,事务T2读取同一数据后,T1由于某种原因被除撤消,而此时T1把已修改过的数据又恢复原值,T2读到的数据与数据库的数据不一致,则T2读到的数据就为“...
  • ffm83
  • ffm83
  • 2015-02-04 16:17
  • 790

数据库事务,对象关系!

  • 2010-09-08 22:07
  • 2.10MB
  • 下载

数据库事务(2)数据库的隔离级别

事务的隔离级别:以上的4种问题(更新丢失、脏读、不可重复读、幻读)都和事务的隔离级别有关。通过设置事务的隔离级别,可以避免上述问题的发生。未授权读取 级别:也称为读未提交(Read Uncommitt...

数据库事务隔离级别

1.      Jdbc事务隔离级别 Jdbc隔离级别 数据库隔离级别 数据访问情况 TRANSACTION_READ_UNCOMMITTED(...

数据库事务隔离级别

  • 2011-12-19 14:09
  • 154KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)