2014-11-07 3 views
-1

Я попытался скомпилировать этот код на Oracle sqlplus, но он вернул некоторые ошибки. Что я делаю неправильно?PLS-00103 Ошибка sqlplus при создании триггера

CREATE OR REPLACE TRIGGER check_id 
BEFORE INSERT ON Area 
FOR EACH ROW 
DECLARE 
numero AREA.codigo%TYPE; 

BEGIN 
    SELECT MAX(CODIGO) INTO numero FROM AREA; 
    IF numero < 42 
     :NEW.codigo := 42; 
    ELSE 
     :NEW.codigo := numero +1; 
    END IF; 
END; 
/

SQL> показать ошибки;

Errors for TRIGGER CHECK_ID: 

LINE/COL ERROR 
-------- ----------------------------------------------------------------- 
7/3  PLS-00103: Encountered the symbol "" when expecting one of the 
     following: 
     * & - +/at mod lembrete rem then <um expoente (**)> e ou || 
     multiset 

ответ

0

Вы упускаете ключевое слово THEN на линии

IF numero < 42 

Это должно быть

IF numero < 42 THEN