Oracle的表操作——事务

1、事务:是由对数据库的若干操作组成的一个单元,这些操作要么都完成,要么都取消,从而保证数据满足一致性的要求

2、事务的组成

(1)、一条或多条DML

(2)、一条DDL

(3)、一条DCL

注:<1>、DML语句需要使用commit提交事务或使用rollback回滚事务

        <2>、DDL和DCL是自动提交事务的

3、事务的作用:保证数据的安全有效。当执行事务操作(DML语句)时,Oracle会被作用表上加表锁,以防止其他用户改变表结构;同时会在被作用行上加行锁,以防止其他事务在相应行上执行DML操作

4、 commit、rollback、savepoint控制事务的方法

(1)、提交事务(commit):通过commit语句可以提交事务,当执行了commit语句后,会确认事务的变化、结束事务、删除保存点,释放锁。当使用commit语句结束事务之后,其他回话将可以查看到事务变化后的新数据

(2)、回滚事务(rollback):rollback只能对未提交的数据撤销,已经commit的数据是无法撤销的,因为commit之后已经持久化到数据库中

(3)、保存点(savepoint):是事务中的一点,用于取消部分事务,当结束事务时,会自动删除该事务所定义的所有保存点。当执行rollback时,通过指定保存点可以回退到指定的点

<1>、设置保存点:savepoint a;

<2>、回滚部分事务:rollback to a;

<3>、回滚全部事务:rollback;

例:update emp_bak set sal = 555 where empno = 7499;

         savepoint a;

          update emp_bak set sal = 666 where empno = 7499;

          rollback to a;

          rollback to b;

          rollback;

猜你喜欢

转载自blog.csdn.net/s___lei/article/details/78475645