このトリガーは、10% を超える価格上昇が発生した場合にエラーをスローすることになっています。何らかの理由で PLS-00103 エラーが表示されます。
CREATE OR REPLACE TRIGGER product_price_updt
BEFORE UPDATE ON PRODUCT
FOR EACH ROW
DECLARE
price_error VARCHAR2(100);
BEGIN
IF (:new.price > :old.price * 1.1) THEN raise price_error;
END IF;
EXCEPTION
when price_error then ('Price increase is greater than 10%, update cancelled');
END;
コンパイルするとこんな感じ。
Error(7,78): PLS-00103: Encountered the symbol ")" when expecting one of the following: * & = - + < / > at in is mod remainder not rem <an exponent (**)> <> or != or ~= >= <= <> and or like like2 like4 likec as between || multiset member submultiset
おそらく私の構文が間違っていて、エラーが誤解を招く可能性があります。問題が見つかりません。