我已经通过Internet搜索了一些资源,为我提供了一个如何调用我在PL/SQL中的触发器中创建的函数的示例。在pl/sql的触发器中调用函数
我做了一个名为get_balance
功能,看起来像这样:
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;
/
现在我想调用此函数从触发器内取款前检查的平衡。我试着做如下,但我认为这是完全错误的:
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;
/
可能有人请提供一个新手用的如何从一个触发器中调用一个函数的例子吗?
你正在做正确的唯一....任何错误你有编译这个吗? – 2012-02-21 11:08:25
环境交易? – 2012-02-21 11:09:28
它编译,但我收到警告。 – Posidon 2012-02-21 11:25:59