PL/SQLのトリガー内で作成した関数を呼び出す方法の例をインターネットで検索しました。pl/sqlのトリガー内の関数を呼び出す
create or replace function get_balance(p_custno in number)
return number
as
v_balance account.balance%type;
begin
select balance
into v_balance
from account
where custno = p_custno;
return v_balance;
end;
/
は今、私は撤退する前に残高を確認するために、トリガー内からこの関数を呼び出したい:
私はこのようになりますget_balance
という関数を作りました。次のように私はそれを実行しようとしましたが、私はそれは完全に間違ってだと思う:
create or replace trigger bifer_withdrawal
before insert on withdrawal
for each row
begin
if get_balance(p_custno) <= amount then
raise_application_error(-20001, 'Not enough money in account!');
end if;
end;
/
誰かがトリガー内から関数を呼び出す方法の例で、初心者を提供していただけますか?
:以下の2つのコメントの後、
AMOUNT
場合WITHDRAWAL
その後、テーブルの列です:は
EDITが...それがお役に立てば幸いですあなたはこれをコンパイルしている間に得た? –
アンビエントトランザクション? –
コンパイルされますが、警告が表示されます。 – Posidon