CREATE OR REPLACE TRIGGER "POS_TEST".aaa_I_B_T
BEFORE INSERT ON aaa
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
DECLARE
v_id aaa.id%type;
v_max_id aaa.id%type;
BEGIN
SELECT a.id
INTO v_id
FROM aaa a, aaa_h b
WHERE a.id = b.id;
SELECT max(a.id) id
INTO v_max_id
FROM aaa a;
END;
오렌지에서 컴파일하고 디버깅 실행하면.
ORA-06550: line 2, column 1:
PLS-00103: Encountered the symbol "<" when expecting one of the following:
begin case declare exit for goto if loop mod null pragma
raise return select update while with <an identifier>
<a double-quoted delimited-identifier> <a bind variable> <<
close current delete fetch lock insert open rollback
savepoint set sql execute commit forall merge
<a single-quoted SQL string> pipe
<an alternatively-quoted SQL string>
이런식의 에러가 나오고,
SQL GATE에서 실행하면
ORA-04071:MISSING BEFORE, AFTER OF INSTEAD OF KEWORD
이런 에러가 나오네요.... BEFORE 선언해 줬는데, 어이가 없네요...
이것 때문에 하루 종일 보내고 있네요...
위의 2가지 에러 모두 어떻게 대처를 해야 할 까요?
왜 툴마다 다른 에러가 발생하는지 모르겠네요...
PL/SQL 디버깅은 왤케 어렵나요? 좀 쉽게 되는 방법은 없나요...
|