n 什么是事物
事物是把对数据库的一系列操作(dml)看做一个整体
事物用于保证数据的一致性,它由一组相关的dml语句组成,改组的dml语句要么全部成功,要么全部失败。
如:网上转账就是典型的要用事物来处理,用以保证数据的统一性。
n 事物和锁
当执行事物操作时(dml语句),oracle会被作用的表上加锁,防止其它用户改变表的结构,这里对我们用户来讲是非常重要的。
n 提交事物
当执行使用commit语句可以提交事物,当执行了commit语句后,会确认事物的变化、结束事物、删除保存点、释放锁,当使用commit语句结束事物后,其它会话将可以查看到事物变化后的新数据。
n 回退事物
在介绍回退事物前,我们先介绍一下保存点(savepoint)的概念和作用
保存点是事物中的一点,用于取消部分事物,当结束事物时,会自动的删除该事物所定义的所有保存点。
当执行rollback时,通过指定保存点可以回退到指定的点。
n 事物的几个重要操作
1)设置保存点:savepoint 保存点名
2)取消部分事物:rollback to 保存点名
3)取消全部事物:rollback
v 在一个事物中可以保存多个保存点;
v 一个保存点只有一次回退的机会,回退以后,该保存点就消失了,不能再回退了;
v 设置保存点是有资源开销的;
v 一旦提交了事物,则不能回退到任何保存点。