小编典典

PL SQL触发器使用raise_application_error引发错误。

sql

我有一些代码需要调试帮助,但我认为,如果我能运行其中之一,我将可以得到其余的代码(哦,我希望如此)。

create or replace 
trigger minimumwage
before insert or update on Employee
for each row
begin
if :new.Wage < 7.25 
then raise_application_error('-20000,Pay is below Texas minimum wage!');
end if;
end;
/

我正在尝试通过sqlplus在我学校的服务器上运行的表上执行此操作,如果有帮助的话。


阅读 165

收藏
2021-04-14

共1个答案

小编典典

遇到错误时,指定什么错误总是有帮助的。raise_application_error触发器中的调用中存在语法错误。该过程需要两个参数,一个数字和一个字符串。您传入的是一个长字符串的单个参数。

create or replace trigger minimumwage
  before insert or update on Employee
  for each row
begin
  if :new.Wage < 7.25 
  then 
    raise_application_error(-20000,'Pay is below Texas minimum wage!');
  end if;
end;

假设WAGE您的EMPLOYEE表格中有一列,则该值应有效。

2021-04-14