1.回退事务
最好设置一个保存点,例savepoint a,或者执行 exec dbms_transaction.savepoint('a')(执行前需要执行set serveroutput on语句);取消部分事务就可以使用rollback to a,或者执行exec dbms_transaction.rollback_savepoint('a');取消全部事务可以执行rollback,或者exec dbms_transaction.rollback;
2.只读事务
set transaction read only,或者执行exec dbms_transaction.read_only;这时候你再进行查询回查询你执行这条语句时该表中数据的信息,其他用户修改时虽然改变了表中的数据但是不会被你发现。
3.顺序事务
set transaction isolation level serializable;基本上与2条执行一样。