set echo on
conn scott/tiger

drop table bank_account;

create table bank_account (id number primary key, amount number);

insert into bank_account values (1,0);

commit;

pause
clear screen

create or replace procedure update_account(p_id number,p_amount number) as
n number;
begin
select amount into n from bank_account where id=p_id;
update bank_account set amount = n+p_amount;
end;
/


create or replace procedure deposit (p_id number,p_amount number) as
begin
update_account(p_id,p_amount);
end;
/

create or replace procedure withdraw(p_id number,p_amount number) as
begin
update_account(p_id,p_amount*(-1));
end;
/

pause
clear screen

exec withdraw(1,500)

pause

clear screen

host cat shared_account2.sql

pause

set define off
host start sqlplus /nolog @shared_account2
set define on
pause
clear screen

commit;

select amount from bank_account where id=1;

pause

exit