关系数据库事务的特性是什么?

关系数据库事务的特性是什么?,第1张

关系数据库事务(DatabaseTransaction)是指一个可以包含多个步骤来完成所需要的任务的工作单元。通过事务将一系列不可分割的数据库 *** 作作为一个整体来执行,从而保证了数据库的完整性和有效性。其包含了一组数据库 *** 作命令的一个 *** 作序列,事务中所有命令作为一个整体向系统提交或撤销 *** 作请求(要么完全执行,要么完全不执行,即数据库命令系列要么都成功,要么都不成功)。

2.1.1事务特性数据库事务必须具备ACID特性,一个逻辑工作单元要成为事务,必须满足ACID属性。

ACID是指Atomicity(原子性)、Consistency(一致性)、Isolation(隔离性)和Durability(持久性)。事务由数据库管理系统(DBMS)中的事务管理子系统负责处理。

1.原子性原子性指的是一个事务(Transaction)中的所有 *** 作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。

2.一致性一致性指的是在一个事务执行之前和执行之后数据库都必须处于一致性状态。如果事务成功完成,那么系统中所有变化将正确地应用,系统处于有效状态。如果在事务中出现错误,那么系统中的所有变化将自动地回滚,系统返回到原始状态。

3.隔离性隔离性指的是在并发环境中,当不同的事务同时 *** 纵相同的数据时,每个事务都有各自的完整数据空间。由并发事务所做的修改必须与任何其他并发事务所做的修改隔离。事务查看数据更新时,数据所处的状态要么是另一事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看到中间状态的数据。

4.持久性持久性指的是只要事务成功结束,它对数据库所做的更新就必须永久地保存下来。即使发生系统崩溃,重新启动数据库系统后,数据库还能恢复到事务成功结束时的状态。

事务的四个特性如下:

1、原子性:事务中所有 *** 作是不可再分割的原子单位。事务中所有 *** 作要么全部执行成功,要么全部执行失败。一个事务内的 *** 作要么全部成功要么全部失败。

2、一致性:事务执行后数据库状态与其它业务规则保持一致。其他特性都是为了给一致性服务的。例如买东西,张三买李四的东西,买卖前和买卖后张三和李四的所有钱数之和是保持不变的。

3、隔离性:事务和事务之间是隔离开的,一个事务看不到另一个事务正在 *** 作的数据。

4、持久性:一旦事务提交成功,事务中所有的数据 *** 作都必须被持久化到数据库中,即使提交事务后,数据库马上崩溃,在数据库重启时也必须能保证通过某种机制将数据恢复到提交后的状态。

事务是应用程序中一系列严密的 *** 作,所有 *** 作必须成功完成,否则在每个 *** 作中所作的所有更改都会被撤消。也就是事务具有原子性,一个事务中的一系列的 *** 作要么全部成功要么一个都不做。

事务的结果有两种:当事务中的所有步骤全部成功执行完成时事务提交。如果其中一个步骤失败将发生回滚 *** 作,撤消之前到事务开始时的所有 *** 作。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9868283.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存