ON DELETE CASCADE 옵션
관계형 데이터 베이스에서 외래 키 (Foreign Key) 제약 조건을 정의 할 때 사용되는 옵션 중 하나 입니다.
이 옵션을 설정 하면 부모 테이블에서 행이 삭제 될 때 해당 행을 참조하는 자식 테이블의 행도 자동으로 삭제됩니다.
간단히 말해, 만약 부모 테이블의 한 행이 삭제되면, 이 행을 참조하는 자식 테이블의 모든 관련 행도 함께 삭제됩니다.
이를 통해 데이터 무결성을 유지하고 데이터베이스의 일관성을 유지 할 수 있습니다.
예를 들어, 다음과 같은 두 개의 테이블이 있다고 가정해보겠습니다.
CREATE TABLE 부모 (
부모_ID NUMBER PRIMARY KEY,
부모_이름 VARCHAR2(50)
);
CREATE TABLE 자식 (
자식_ID NUMBER PRIMARY KEY,
부모_ID NUMBER,
자식_이름 VARCHAR2(50),
CONSTRAINT fk_부모 FOREIGN KEY (부모_ID) REFERENCES 부모(부모_ID) ON DELETE CASCADE
);
여기서 자식 테이블의 ‘부모_ID’ 열은 ‘부모’ 테이블의 ‘부모_ID’ 열을 참조하는 외래키 입니다.
ON DELETE CASCADE 옵션이 설정되어 있으므로 만약 부모 테이블의 어떤 행이 삭제되면 해당 행을 참조하는 자식 테이블의 모든 행도 자동으로 삭제됩니다.
'Database > Database 개념' 카테고리의 다른 글
인덱스(INDEX) 정의와 인덱스 튜닝 기초 (0) | 2024.04.01 |
---|---|
프로시저(Procedure)란 (0) | 2024.03.30 |