当前位置:首页 » 编程语言 » sql事务的四种特性
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql事务的四种特性

发布时间: 2023-05-20 15:32:30

数据库事务的四大特性

数据库事务的四大特性:原子性、一致性、分离性、持久性。
事务的原子性指的是,事务中包含的程序作为数据库的逻辑工作单位,它所做的对数据修改操作要么全部执行,要么完全不执行。这种特性称为原子性。
一致性事务的一致性指的是在一个事务执行之前和执行之后数据库都必须处于一致性状态。
分离性指并发的事务是相互隔离的。

(1)sql事务的四种特性扩展阅读

事务的原子性要求,如果把一个事务可看作是一个程序,它要么完整的被执行,要么完全不执行。就是说事务的操纵序列或者完全应用到数据库或者完全不影响数据库。这种特性称为原子性。 假如用户在一个事务内完冲山成了对数据库的更新,这时所有的更新对外部世界必须是可见的,或者完全没有更新。前者称事务已提交,后者称事务撤消(或流产)。DBMS必须确保由成功提交的事务完成的所有操纵在数据库内有完全的反映,而失败的事务对数据库完全没有影响乱顷。

一致性事务的一致性指的是在一个事务执行之前和执行之后数据库都必须处于一致性状态。这种特性称为事务的一致性。假如数据库的`状态满足所有的完整性约束,就说该数据库是一致的。 一致性处理数据库中对所有语义约束的保护。假如数据库的状态满足所有的完整性约束,就说该数据库是一致的。例如,当数哗判陆据库处于一致性状态S1时,对数据库执行一个事务,在事务执行期间假定数据库的状态是不一致的,当事务执行结束时,数据库处在一致性状态S2。

分离性指并发的事务是相互隔离的。即一个事务内部的操作及正在操作的数据必须封锁起来,不被其它企图进行修改的事务看到。 分离性是DBMS针对并发事务间的冲突提供的安全保证。DBMS可以通过加锁在并发执行的事务间提供不同级别的分离。假如并发交叉执行的事务没有任何控制,操纵相同的共享对象的多个并发事务的执行可能引起异常情况。 DBMS可以在并发执行的事务间提供不同级别的分离。分离的级别和并发事务的吞吐量之间存在反比关系。较多事务的可分离性可能会带来较高的冲突和较多的事务流产。流产的事务要消耗资源,这些资源必须要重新被访问。因此,确保高分离级别的DBMS需要更多的开销。

持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失。即一旦一个事务提交,DBMS保证它对数据库中数据的改变应该是永久性的,耐得住任何系统故障。持久性通过数据库备份和恢复来保证。 持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失。即对已提交事务的更新能恢复。一旦一个事务被提交,DBMS必须保证提供适当的冗余,使其耐得住系统的故障。

❷ 数据库事务四大特性是什么

事务的:原子性、一致性、分离性、持久性原子性、一致性局贺运、分离性、持久性(1)原子性事务的原子性指的是,事务中包含的程序作为数据库的逻辑工作单位,它所做的对数据修改操作要么全部执行,要么完全不执行

这种特性称为原子性

事务的原子性要求,如果把一个事务可看作是一个程序,它要么完整的被执行,要么完全不执行

就是说事务的操纵序列或者完全应用到数据库或者完全不影响数据库

这种特性称为原子性

假如用户在一个事务内完成了对数据库的更新,这时所有的更新对外部世界必须是可见的,或者完全没有更新

前者称事务已提交,后者称事务撤消(或流产)

DBMS必须确保由成功提交的事务完成的所有操纵在数据库内有完全的反映,而失败的事务对数据库完全没有影响

(2)一致性事务的一致性指的是在一个事务执行之前和执行之后数据库都必须处于一致性状态

这种特拍谈性称为事务的一致性

假如数据库的状态满足所有的完整性约束,就说该数据库是一致的

一致性处理数据库中对所有语义约束的保护

假如数据库的状态满足所有的完整性约束,就说该数据库是一致的

例如,当数据库处于一致性状态S1时,对数据库执行一个事务,在事务执行期间假定数据库的状态是不一致的,当事务执行结束时,数据库处在一致性状态S2

(3)分离性分离性指并发的事务是相互隔离的

即一个事务内部的操作及正在操作的数据必须封锁起来,不被其它企图进行修改的事务看到

分离性是DBMS针对并发事务间的冲突提供的安全保证

DBMS可以通过加锁在并发执行的事务间提供不同级别的分离

假如并发交叉执行的事务没有任何控制,操纵相同的共享对象的多个并发事务的执行可能引起异常情况

DBMS可以在并发执行的事务间提供不同级别的分离

分离的级别和并发事务的吞吐量之间存在反比关系

较多事务的可分离性桐梁可能会带来较高的冲突和较多的事务流产

流产的事务要消耗资源,这些资源必须要重新被访问

因此,确保高分离级别的DBMS需要更多的开销

(4)持久性持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失

即一旦一个事务提交,DBMS保证它对数据库中数据的改变应该是永久性的,耐得住任何系统故障

持久性通过数据库备份和恢复来保证

持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失

即对已提交事务的更新能恢复

一旦一个事务被提交,DBMS必须保证提供适当的冗余,使其耐得住系统的故障

❸ 事务的特性

事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begintransaction和endtransaction语句(或函数调用举纯)来界定

特性:原子性,一致性,隔离性,持续性。纳绝

原子性:事物是数据库的逻辑工作单位,事物中包括的操作要么都做,要么都不做。

一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。

隔离性:一个事务的执行不能被其它事物干扰。即一个事物内部的操作及洞答姿使用的数据对其它并发事物是隔离的,并发执行的各个事物之间不能互相烦扰。
持续性:也称永久性,只一个事物一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其它操作或故障不应该对其执行结果有任何影响。

❹ 什么是事务,SQL Server中的事务有什么特点

原子性
事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。
一致性
事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如
B
树索引或双向链表)都必须是正确的。
隔离
由并发事务所作的修改必须与任何其他并发事务所作的修改隔离。事务识别数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是第二个事务修改它之后的状态,事务不会识别中间状态的数据。这称为可串行性,因为它能够重新装载起始数据,并且重播一系列事务,以使数据结束时的状态与原始事务执行的状态相同。
持久性
事务完成之后,它对于系统的影响是永久性的。该修改即使出现系统故障也将一直保持。

❺ 事物四大特性

事务的介绍

事务就是用户定义的一系列执行SQL语句的操作, 这些操作要么完全地执行,要么完全地都不执行, 它是一个不可分割的工作执行单元。
事务的使用场景:
在日常生活中,有时我们需要进行银行转账,这个银行转账操作背后就是需要执行多个SQL语句,假
如这些SQL执行到一半突然停电了,那么就会导致这个功能只完成了一半,这种情况是不允许出现,
要想解决这个问题就需要通过事务来完成。
事务的四大特性:

原子性(Atomicity)

一致性(Consistency)

隔离性(Isolation)

持久性(Durability)

原子性:

一个事务必须被视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么
全部失败回滚,对于一个事务来说,不可能只执行其中的一部分操作,这就是事务的原子性

一致性:

数据库总是从一个一致性的状态转换到另一个一致性的状态。(在前面的例子中,一致性确保了,即
使在转账过程中系统崩溃,支票账户中也不会损失200美元,因为事务最终没有提交,所以事务中所做
的修改也不会保存到数据库中。)

隔离性:
通常来说,一个事务所做的修改操作在提交事务之前,对于其他事务来说是不可见的。(在前面的例
子中,当执行完第三条语句、第四条语句还未开始时,此时有另外的一个账户汇总程序开始运行,则
其看到支票帐户的余额并没有被减去200美元。)

持久性:
一旦事务提交,则其所做的修改会永久保存到数据库。

说明:事务能够保证数据的完整性和一致性,让用户的操作更加安全。

事务的特性:
原子性: 强调事务中的多个操作时一个整体
一致性: 强调数据库中不会保存不一致状态
隔离性: 强调数据库中事务之间相互不可见
持久性: 强调数据库能永久保存数据,一旦提交就不可撤销
MySQL数据库默认采用自动提交(autocommit)模式, 也就是说修改数据(insert、update、delete)的操 作会自动的触发事务,完成事务的提交或者回滚
开启事务使用 begin 或者 start transaction; 事务 81
回滚事务使用 rollback;
pymysql 里面的 conn.commit() 操作就是提交事务
pymysql 里面的 conn.rollback() 操作就是回滚事务