[SQL] DELETE FROM 테이블 ~
Database/SQL
2024. 5. 20. 16:39
테이블을 생성 시에 기존 테이블을 참고하여 만들면 기존 테이블 삭제 시 옵션에 따라 삭제되기도 하는데...
CREATE TABLE 테이블 (
컬럼 데이터타입 REFERENCES 참조테이블(컬럼) ON DELETE CASCADE
);
-> 참조테이블 데이터 삭제 시, 같이 삭제 됨
CREATE TABLE 테이블 (
컬럼 데이터타입 REFERENCES 참조테이블(컬럼) ON DELETE SET NULL
);
-> 참조테이블 데이터 삭제 시, NULL로 설정
CREATE TABLE 테이블 (
컬럼 데이터타입 REFERENCES 참조테이블(컬럼) ON DELETE SET DEFAULT
);
-> 참조테이블 데이터 삭제 시, 기본값으로 설정
DELETE/MODIFY
- CASCADE
- SET NULL
- SET DEFAULT
- RESTRICT : 자식 테이블에 외래키의 값이 없는 경우만 부모테이블에서 삭제 허용
- NO ACTION : 참조 무결성을 위반하는 삭제/수정 액션을 취하지 않음
DELETE | DROP | TRUNCATE 비교
롤백 가능 | 롤백 불가 | 롤백 불가
수동 커밋 | 자동 커밋 | 자동 커밋
데이터만 삭제 | 정의 자체 삭제 | 테이블 최초 초기 상태로 변경
'Database > SQL' 카테고리의 다른 글
[SQL] MERGE INTO TABLE ~ (0) | 2024.05.21 |
---|---|
[SQL] 키 (0) | 2024.05.20 |
[SQL] CREATE TABLE ~ (0) | 2024.05.20 |
[SQL] 서브쿼리 (0) | 2024.05.19 |
[SQL] 쿼리 실행 순서 (0) | 2024.05.17 |
@서리★ :: Seory Dev
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!