2017-12-06 9 views
1

테이블 BGT_PAND_MUTATIE에 0에서 1로 AFGEVINKT을 변경 한 후 테이블 PAND을 업데이트 오라클의 트리거를 만들려고 할 때 : 나는 다음과 같은 메시지가후 업데이트 트리거는 '나쁜 바인드 변수'오류 얻을 수

CREATE OR REPLACE TRIGGER AU_BGT_PAND_MUTATIE 
AFTER UPDATE OF AFGEVINKT ON BGT_PAND_MUTATIE 
FOR EACH ROW 

BEGIN 

    UPDATE PAND 
    SET VRIJNUMMER1 = NULL 
    WHERE PAND.ID =: BGT_PAND_MUTATIE.ID; 

END; 

를 :

Error(5,20): PLS-00049: bad bind variable 'BGT_PAND_MUTATIE.ID' 

BGT_PAND_MUTATIE는 열을 IDAFGEVINKT 있습니다. 표 PAND에는 IDVRIJNUMMER1 열이 있습니다.

이 작업을하려면 어떻게해야합니까?

답변

2

현재이 다음 =:

WHERE PAND.ID =: BGT_PAND_MUTATIE.ID; 

콜론은 다음과 같은 식별자가 바인드 변수로 취급하고있다. 그러나 직접 테이블을 참조하지는 마십시오. 당신은 the NEW psdeudorecord을 사용합니다 :

WHERE PAND.ID = :NEW.ID;