1

デバッグの助けが必要なコードがいくつかありますが、そのうちの1つを実行できれば、残りを取得できると思います(ああ、どうすればいいですか)。

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 を介して実行されているテーブルでこれを実行しようとしています。

4

2 に答える 2

5

エラーが発生した場合、どのエラーが発生したかを指定すると常に役立ちます。raise_application_errorトリガーの呼び出しに構文エラーがあります。このプロシージャは、数値と文字列の 2 つの引数を取ります。1 つの長い文字列である単一の引数を渡しています。

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

于 2013-05-08T20:06:24.593 に答える
0
create or replace trigger deny_dec_pu before update of PU on ARTICLE
 for each row
 declare     
 erreur_pu exception;
  begin

     *insert into erreur values ('Operation de MAJ',sysdate);*

      -- this intruction is never executec why ?          

  if (:new.pu < :old.pu) then
  raise erreur_pu ; 
 end if;
 exception 
 when erreur_pu then 
  Raise_application_error(-20100, 'rrrrrrrr', FALSE); 

 end;

/

于 2014-12-18T22:53:54.047 に答える