--带事务的存储过程 CREATE OR REPLACE PROCEDURE Account_zhuanzhang(fromuser NUMBER,touser NUMBER,money NUMBER) IS BEGIN UPDATE account SET balance = balance - money WHERE id = fromuser; UPDATE account SET balance = balance + money WHERE id = touser; COMMIT; EXCEPTION WHEN OTHERS THEN dbms_output.put_line('转账失败'); ROLLBACK; END Account_zhuanzhang;
调用事务
1 2 3 4 5 6 7 8
SELECT * FROM ACCOUNT; DECLARE fromuser NUMBER := 1; touser NUMBER := 2; money NUMBER := &m; BEGIN account_zhuanzhang(fromuser,touser,money); END;