事务处理
事务用于保证数据的一致性,它由一组相关的DML(数据操作语言)语句组成
该组的DML语句要么全部成功,要么全部失败
事务和锁
当执行事务操作时(DML语句),oracle会在被作用的表上加锁,防止其他用户改变表的结构
提交事务
使用commit语句可以提交事务
当执行了commit语句后,会确认事务的变化、结束事务、删除保存点、释放锁
当使用commit语句后结束事务后,其他会话将可以查看到事务变化后的新数据
回退事务
保存点(savepoint) 是事务中的一点,用户取消部分事务
保存点个数无限制
当结束事务时,会自动删除该事务所定义的所有保存点
当执行rollback时,通过指定保存点可以回退到指定的点
--a1是保存点命名
save point a1;
--回滚a1保存点
rollback to a1;
事务的几个重要操作
- 设置保存点 savepoint 保存点命名
- 取消部分事务 rollback to 保存点
- 取消全部事务 rollback
只读事务
只允许执行查询的操作
--设置只读事务
set transaction real only;