2020040908 / cascade 옵션

-- *cascade 옵션

1) 부모테이블과 자식테이블 간의 참조 설정(외래키)이 되어 있을 때 부모테이블의 제약 조건을 비활성화라면 이를 참조하고 있는 자식 테이블의 제약 조건까지 같이 비활성화 시켜 주는 옵션

2) 부모테이블의 제약조건을 삭제하면 이를 참조하고 있는 자식테이블의 제약조건도 같이 삭제된다


alter table dept06

disable primary key cascade;


select constraint_name, constraint_type, table_name, r_constraint_name, status

from user_constraints

where table_name in('DEPT06', 'EMP06');


alter table dept06

drop primary key; --error

alter table dept06

drop primary key

오류 보고 -

ORA-02273: this unique/primary key is referenced by some foreign keys

02273. 00000 -  "this unique/primary key is referenced by some foreign keys"

*Cause:    Self-evident.

*Action:   Remove all references to the key before the key is to be dropped.


alter table dept06

drop primary key cascade; -- 실행


alter table dept06

add constraint dept06_deptno_pk primary key(deptno); --실행


-- 제약조건에서 반드시 기억해야 되는 것은 6가지 속성이다.

primary key, not null, foreign key, unique 최소 4가지 먼저 이해해야 한다

댓글

Designed by JB FACTORY