본문으로 바로가기

[오라클] on update cascade

category 나의 주니어 개발 일기/오라클 2021. 2. 14. 19:21
728x90
반응형
SMALL

오라클 같은경우 on update cascade 의 제약조건이 먹히지 않는다

 

필자는 부모테이블 에서 데이터 추가시 자식 테이블에 데이터가 그대로 추가되는 것을 구현

 

부모테이블 : CPU_T

부모테이블

부모테이블인 List_T는  MODEL 이 PK로 설정되있음

 

자식테이블:List_T

자식테이블

자식테이블은 현재 부모테이블(List_T)의 기본키외래키로 받고 있는 C_MODEL을 확인할 수 있음

 

(테스트1)

부모테이블(CPU_T)에서 기본키(MODEL) 생성시 자식테이블(List_T) 안에 외래키로 받은 부모테이블의 정보

그대로 추가됨을 확인하자

 

1.트리거 만들기

오라클 같은경우 on update cascade 의 제약조건이 먹히지 않는다. 이 때문에 트리거를 설정하여 제약조건을 만들자!

create or replace  trigger LIST_T_ADD
AFTER INSERT
ON CPU_T
FOR EACH ROW
DECLARE
BEGIN
    INSERT INTO LIST_T(C_MODEL) VALUES(:new.MODEL);
END

 

create or replace trigger 트리거이름

AFTER INSERT

ON 부모테이블

FOR EACH ROW

DECLARE BEGIN

INSERT INTO 자식테이블(자식컬럼명) VALUES(:new.부모컬럼명);

END;

 

추신:

:new 와 ; 을 빠트리지말고 고대로 입력해주자

 

결과:

         

부모

자식

728x90
반응형
LIST