数据库事务学习理解(一)

什么是事务:

数据库是所有系统的核心模块,它存储在磁盘中,在逻辑上,以数据的形式呈现给用户,支持增删改查(CRUD)并在过程中保证数据的正确,可靠。而做到这一点的,就是事务(Transaction)。

事务的四个特性(ACID):

1.原子性(Atomicity):

要么全部完成,要么全部取消,当对数据库进行操作时,根据业务逻辑,我们会操作个表中的数据,当一步操作出错时,会让该事务中的所有操作都回滚,数据还是未操作时的样子。
举例: 当A向B转账时,具体操作为:A账户减少100元,B账户上增加100元,但是此时B账户添加的时候出错了,导致A账户的钱没了,B转账未成功,或者是A的资金没有减少,但是B却平白无故增加了100元,所以A,B的账户的金额要么都成功,要么都失败。

2.隔离性(Isolation):

有多个事务同时进行,最后结束时,最终的结果应该是相同的
举例:A向B转账100元,同时C又给A转账300元,最后的结果是A账户上增加了200元。而不是A增加了300,B增加了100,C少了300。

3.持久性(Durability):

当事务结束时,数据会永久的保存到数据库里
举例:当A刚刚往外转完账时,数据库发生崩溃,但是转完账依旧会保存到数据库里。

4.一致性(Consistency):

保证账户的数据不会凭空消失或产生,该特性依赖原子性,隔离性

世界上有10种人,一种是懂二进制的,一种是不懂二进制的。

感谢您的收看,如有哪里写的不对 请留言,谢谢。

你可能感兴趣的:(数据库)