什么叫做事务以及事务的四个特性

什么叫做事务以及事务的四个特性,第1张

事务(Transaction),一般是指要做的或所做的事情。在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。

1、原子性。一个事务是一个不可分割的工作单位,事务中包括的诸 *** 作要么都做,要么都不做。

2、一致性。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。

3、隔离性。一个事务的执行不能被其他事务干扰。即一个事务内部的 *** 作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。

4、持久性。指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他 *** 作或故障不应该对其有任何影响。

扩展资料

事务类型:

1、手动事务。手动事务允许显式处理若干过程,这些过程包括:开始事务、控制事务边界内的每个连接和资源登记、确定事务结果(提交或中止)以及结束事务。

2、自动事务。NET 页、XML Web services方法或 NET Framework 类一旦被标记为参与事务,它们将自动在事务范围内执行。可以通过在页、XML Web services 方法或类中设置一个事务属性值来控制对象的事务行为。

参考资料来源:百度百科——事务

ACID,指数据库事务正确执行的四个基本要素的缩写包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。一个支持事务(Transaction)的数据库系统,必需要具有这四种特性,否则在事务过程(Transactionprocessing)当中无法保证数据的正确性,交易过程极可能达不到交易方的要求

原子性

整个事务中的所有 *** 作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。

一致性

在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。

隔离性

两个事务的执行是互不干扰的,一个事务不可能看到其他事务运行时,中间某一时刻的数据。

持久性

在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。

什么是数据库事务

数据库事务是指作为单个逻辑工作单元执行的一系列 *** 作。

设想网上购物的一次交易,其付款过程至少包括以下几步数据库 *** 作:

·

更新客户所购商品的库存信息

·

保存客户付款信息--可能包括与银行系统的交互

·

生成订单并且保存到数据库中

·

更新用户相关信息,例如购物数量等等

正常的情况下,这些 *** 作将顺利进行,最终交易成功,与交易相关的所有数据库信息也成功地更新。但是,如果在这一系列过程中任何一个环节出了差错,例如在更新商品库存信息时发生异常、该顾客银行帐户存款不足等,都将导致交易失败。一旦交易失败,数据库中所有信息都必须保持交易前的状态不变,比如最后一步更新用户信息时失败而导致交易失败,那么必须保证这笔失败的交易不影响数据库的状态--库存信息没有被更新、用户也没有付款,订单也没有生成。否则,数据库的信息将会一片混乱而不可预测。

数据库事务正是用来保证这种情况下交易的平稳性和可预测性的技术。

sql server中事务的作用是如果任何一个语句 *** 作失败那么整个 *** 作就被失败,以后 *** 作就会回滚到 *** 作前状态,或者是上个节点。为了确保要么执行,要么不执行,就可以使用事务。是指访问并可能更新数据库中各种数据项的一个程序逻辑执行单元(unit)。

扩展资料:

事务通常由高级数据库 *** 纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句(或函数调用)来界定。事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体 *** 作组成。

一个事务的执行不能被其他事务干扰。即一个事务内部的 *** 作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。

事务管理对于一系列数据库 *** 作进行管理。

一个事务包含一个或多个SQL语句,是逻辑管理的工作单元(原子单元)。

一个事务开始于第一次执行的SQL语句,结束于Commit或Rollback或DDL语句。

注意:其中Commit,Rollback是显示的提交事务,而DDL语句是隐式的提交事务的。DDL语句的 *** 作是没有办法回滚的。

事务处理(TRANSACTION)是由一个或多个SQL语句序列结合在一起所形成的一个逻辑处理单元。事务处理中的每个语句都是完成整个任务的一部分工作,所有的语句组织在一起能够完成某一特定的任务。DBMS在对事务处理中的语句进行处理时,是按照下面的约定来进行的,这就是“事务处理中的所有语句被作为一个原子工作单位,所有的语句既可成功地被执行,也可以没有任何一个语句被执行”。DBMS负责完成这种约定,即使在事务处理中应用程序异常退出,或者是硬件出现故障等各种意外情况下,也是如此。在任何意外情况下,DBMS都负责确保在系统恢复正常后,数据库内容决不会出现“部分事务处理中的语句被执行完”的情况。

数据库的事务简单说就是 执行一组命令 如果有一个命令出错 就恢复到整组命令执行之前的状态, 这组命令就叫事务,

用于 数据严格要求的场景, 比如转账 , A账号转款给B账号 A账号先减去金额, B账号加上金额, 如果 B账号加上金额时 失败 会自动 将A账号恢复到减去金额之前的状态

当数据库需要处理 *** 作量大、复杂度高的数据的时候需要用到事务。用事务是为了保证数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行。

一个数据库事务通常包含了一个序列的对数据库的读/写 *** 作。它的存在包含有以下两个目的:

1、为数据库 *** 作序列提供了一个从失败中恢复到正常状态的方法,同时提供了数据库即使在异常状态下仍能保持一致性的方法。

2、当多个应用程序在并发访问数据库时,可以在这些应用程序之间提供一个隔离方法,以防止彼此的 *** 作互相干扰。

当事务被提交给了数据库管理系统,则数据库管理系统需要确保该事务中的所有 *** 作都成功完成且其结果被永久保存在数据库中,如果事务中有的 *** 作没有成功完成,则事务中的所有 *** 作都需要被回滚,回到事务执行前的状态;同时,该事务对数据库或者其他事务的执行无影响,所有的事务都好像在独立的运行。

扩展资料:

数据库事务ACID性质:

1、原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的 *** 作要么全部被执行,要么都不执行。

2、一致性(Consistency):事务应确保数据库的状态从一个一致状态转变为另一个一致状态,一致状态的含义是数据库中的数据应满足完整性约束。

3、隔离性(Isolation):多个事务并发执行时,一个事务的执行不应影响其他事务的执行。

4、持久性(Durability):已被提交的事务对数据库的修改应该永久保存在数据库中。

参考资料来源:

百度百科-数据库事务

百度百科-数据库

以上就是关于什么叫做事务以及事务的四个特性全部的内容,包括:什么叫做事务以及事务的四个特性、数据库事务级别、数据库 *** 作中的“事务”指的是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/sjk/10160116.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存