Oracle——控制事务

一、回滚到保留点

  • 使用 SAVEPOINT 语句在当前事务中创建保存点。
  • 使用 ROLLBACK TO SAVEPOINT 语句回滚到创建的保存点。

二、提交或回滚前的数据状态

  • 改变前的数据状态是可以恢复的
  • 其他用户不能看到当前用户所做的改变,直到当前用户结束事务。
  • DML语句所涉及到的行被锁定, 其他用户不能操作。

三、提交后的数据状态

  • 数据的改变已经被保存到数据库中。
  • 改变前的数据已经丢失。
  • 所有用户可以看到结果。
  • 锁被释放,其他用户可以操作涉及到的数据。
  • 所有保存点被释放。

四、事务实例

  1. scott用户对employees表进行了更新操作,但没有提交(commit)
  2. 这时system用户想查询更新获得employees表
select * from scott.employees for update;--但是此时数据库没有反应
  • 必须等到scott用户对employees表进行了提交操作,这条Sql语句才会执行。
posted @ 2018-02-02 22:24  Wayfo  阅读(186)  评论(0编辑  收藏  举报