事务的四种属性

数据库中事务有四种属性ACID:

(1)原子性:一个事务要么完全执行,要么根本不执行

(2)一致性:一个事务在它完成后不能留下系统的不一致性的内容

(3)隔离性:所有事务不许 允许在执行时不受其他进行或事务的干涉

(4)持久性:在事务期间,所有的提交的变更数据必须写入持久的数据存储器,并且应该能在硬件和软件失效中保存下来

时间: 2024-10-11 09:48:16

事务的四种属性的相关文章

实现spring事务的四种方式

用一个银行账号转钱的案例来说明spring事务的实现.在转钱过程中,一个账号钱增加,另一个减少,那么当有异常产生时,就会出现钱转丢了的现象一个减少了,而另一个没有增加,这个时候就需要把这两个行为绑定到一起,要么同时发生,要么都不发生这就用到了事务,事务就是指在逻辑上的一组操作,这组操作要么全部成功,要么全部失败 实现spring事务的四种方式分别为:(1)编程式事务管理:需要手动编写代码,在实际开发中很少使用(2)声明式事务管理:(2.1)基于TransactionProxyFactoryBea

css样式表中四种属性选择器

css样式表中四种属性选择器1> 简易属性 tag[class]{ font-weight:bold } It will affect all tag with any class. e.g. <h2 class="old" > or <h2 class="new"> 2>精确属性值 a[href="http://www.cnblogs.cn"][title="textTitle"]{fon

JSP九大内置对象和四种属性范围解读

林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文首先主要解说了JSP中四种属性范围的概念.用法与实例. 然后在这个基础之上又引入了九大内置对象,并对这几大内置对象一个一个的进行分析的解读.内容非常具体,例子都附有代码和执行的结果截图. 本文project下载 一.四种属性范围 1.1.在JSP中提供了四种属性保存范围 page:在一个页面内保存属性.跳转之后无效request:在一次服务请求范围内.server跳转后依旧有效se

JAVA web四种属性范围总结

首先必须要了解客户端跳转和服务器端跳转的区别: 客户端跳转: response.sendRedict(String path),地址栏发生改变.不能传递request属性. 服务器端跳转:<jsp:forward> 地址栏不发生改变.能传递request属性. request属性范围: 只有在服务器端跳转以后,所有设置的内容才会停留下来. session属性范围:  不管是客户端跳转还是服务器端跳转,只要是是属性设置了都可以取得. 1:page:(pageContext) 只在一个页面中保存属

数据库事务的四种隔离机制和七种传播行为

MySQL数据库为我们提供的四种隔离级别:(依次解决脏读.不可重复读.幻读) ① Serializable (串行化):可避免脏读.不可重复读.幻读的发生. ② Repeatable read (可重复读):可避免脏读.不可重复读的发生.(Mysql默认的方式) ③ Read committed (读已提交):可避免脏读的发生.(Oracle默认的方式) ④ Read uncommitted (读未提交):最低级别,任何情况都无法保证.(INNODB内部机制) 数据库事务正常执行的四个特性: A

SQL事务的四种隔离级别和MySQL多版本并发控制

SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内外的那些改变时可见的,那些是不可见的.低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销. ReadUncommitted(读取未提交内容) 在该隔离级别,所有事务都可以看到其他未提交事务的执行结构.本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少.读取未提交的数据,也被称之为脏读(Dirty Read) ReadCommitted(读取提交内容) 这是大多数数据库系统的默认隔离级别(但不是MySQL默认的).它

事务的四种隔离级别和七种传播行为

很多人容易搞混不可重复读和幻读,确实这两者有些相似.但不可重复读重点在于update和delete,而幻读的重点在于insert. 避免不可重复读需要锁行就行 避免幻影读则需要锁表 如果使用锁机制来实现这两种隔离级别,在可重复读中,该sql第一次读取到数据后,就将这些数据加锁,其它事务无法修改这些数据,就可以实现可重复 读了.但这种方法却无法锁住insert的数据,所以当事务A先前读取了数据,或者修改了全部数据,事务B还是可以insert数据提交,这时事务A就会 发现莫名其妙多了一条之前没有的数

数据库事务的四种隔离模式

四种隔离模式主要是用来解决不同线程的事务造成的几种问题: 1.修改丢失:两个事务A,B对同一数据同时进行读取与修改,出现事务B 覆盖事务A的提交结果 2.脏读:事务A读到事务B修改却未提交的数据,事务B回滚数据修改操作,导致了事务A获得数据是脏数据(也可以理解为事务A获取的数据与数据库中存储的数据是不一致的) 3.(不可重复读)虚读:事务A先读取某一行数据,事务B对改行数据进行修改,事务B再一次读取该行数据时就会造成前后两次读取结果不一致. 4.幻读:事务A读取某段数据,事务B对其进行插入或者删

mysql 事务的四种隔离级别

MYSQL标准定义了4种隔离级别,用来限定事务内外的哪些改变是可见的,哪些是不可见的. 低的隔离级一般支持更高的并发处理,并拥有更低的系统开销. 隔离级别由低到高:Read Uncommitted < Read Committed < Repeatable Read < Serializable. 第一:READ UNCOMMITTED (读取未提交内容) 在该隔离级别,所有事务都可以看到其他未提交(commit)事务的执行结果. 本隔离级别很少用于实际应用,因为它的性能也不比其他级别好