Oracle PL/SQL 事物处理 银行转账

时间:2023-03-10 00:42:45
Oracle PL/SQL 事物处理 银行转账

Oracle数据库中的事务处理:添加,修改,删除时需要使用事务处理(显示事务)。
1.事务的分类显示事务(添加,修改,删除)和隐式事务(除了添加,修改,删除)。
2.事务的执行方式:自动提交(jdbc)或手动提交。
  在添加,修改,删除时,是否需要编写commit;
3.事务的应用:当一个操作对应多条添加,修改,删除语句时,需要通过事务处理,来维护数据的一致性。
  事务的提交和事物的回滚。

 --实现银行转账的效果,commit表示事物执行,更新到数据库
update JSB_TEST set Money=Money+300 where Id=1;
update JSB_TEST set Money=Money-300 where Id=2;
commit;
 declare
v_error exception;
PRAGMA EXCEPTION_INIT(v_error,-2290);
begin
update JSB_TEST set Money=Money+300 where Id=1;
update JSB_TEST set Money=Money-300 where Id=2;
commit;
dbms_output.put_line('转账成功');
exception
when v_error then
rollback; --事物回滚
dbms_output.put_line('转账失败');
end;