欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

事务的基本概念

程序员文章站 2022-07-04 23:47:37
...

事务

是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。

3条语句

begin transaction;  // 事务开始
commit;     // 提交,提交事务的所有操作
rollback;  

rollback 回滚,即在事务运行的过程中发生了某些故障,事务不能继续执行,系统将事务中对数据库的所有已完成的操作全部撤销,回滚到事务开始时的状态。这里的操作指对数据库的更新操作。

4个特性

1. 原子性     要么都做,要么都不做
2. 一致性    事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态 ,一致性与原子性是密切相关的
3. 隔离性    各个事务之间不能互相干扰。
4. 持续性    一个事务一旦提交,它对数据库中数据的改变应该是永久的。接下来的其他操作或故障不应该对其有任何影响。

事务故障和事务撤销

事务内部更多的故障是非预期的,是不能由应用程序处理的。事务故障意味着事务没有达到预期的终点(commit或者显示的rollback),因此,数据库可能处于不正确状态。恢复程序要在不影响其他事务运行的情况下,强行回滚该事务,即撤销该事务已经作出的任何对数据库的修改,使得该事务好像根本没有启动一样。这些恢复操作成为事务撤销。

–《数据库系统概论》