您的位置:首页 > 编程语言 > Java开发

java基础知识(3)---面试宝典

2020-06-05 07:56 141 查看

7、什么是事务(ACID)
事务是指一组不可分割的业务逻辑,在数据库中DML语句是受事务保护的,即一组DML语句要么都成功,要么都失败
事务有以下四个特性(简称ACID):
1、原子性(Atomicity): 一个事务是一个不可分割的工作单位,事务中包括的诸操作(多个DML语句)要么都做,要么都不做。 即由一个事务管理的一组DML语句要么都成功,要么都失败。不可拆分
**2、一致性(consistency):**事务必须是使数据库从一个一致性状态变到另一个一致性状态。(约束的限制),即DML语句操作的数据必须要满足表中约束否则不能提交
3、隔离性(isolation): 一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。 (即数据在一个时间点上只能被一个事务保护,其它事务在这个时间点上不能操作)
**4、持久性(durability):**持久性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。

总结:
原子性–>一组SQL语句一起执行,只要有一个失败其他也都会回滚(失败)
一致性–>DML语句要遵循表的约束,否则也会回滚(失败)
隔离性–>一个/一组SQL语句在执行的时候,只要没提交(commit),就不能做别的操作
持久性–>SQL语句一旦提交就不能回滚了,只能重写SQL语句让他回去

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: