---------------事务---当执行到commit时 事务才算是完成,不然 会执行rollback操作。 declare v_money acount.money%type:=1223; ex exception; begin update acount set money=money-v_money where id=1; raise ex; update acount set money=money+v_money where id=2; commit; exception when others then DBMS_OUTPUT.PUT_LINE('掉电了'); rollback; end;
事务的任务便是使数据库从一种状态变换成为另一种状态,这不同于文件系统,它是数据库所特用的。它的特性有四个:TOM总结为ACID即
原子性atomicity:语句级原子性,过程级原子性,事务级原子性
一致性consistency:状态一致,同一事务中不会有两种状态
隔离性isolation:事务间是互相分离的互不影响(这里可能也有自治事务)
持久性durability:事务提交了,那么状态就是永久的