-제약조건 삭제(ALTER -DROP)
ALTER TABLE 테이블명
DROP CONSTRAINT 제약조건이름;
ALTER TABLE EMP
DROP CONSTRAINT EMP_EMPNO_PK;
만약 PK를 삭제하려고하는데 FK에 PK를 참조하고 있다면 무결성 유지할 수 없기때문에,(3가지 중에 적합한 방법으로)
1. FK에 있는 PK를 참조하는 데이터 삭제
2. FK 제약조건을 삭제
3. 테이블을 만들 때
컬럼명 데이터형 REFERENCES 참조테이블(참조컬럼명) ON DELETE CASCADE 를 해주면,
PK 삭제시 참조하고있는 FK의 데이터도 같이 삭제된다.
그래서 FOREIGN KEY 생성할때 아래 옵션 추가하면 가능
ON DELETE CASCADE 옵션을 주면 부모테이블의 데이터가 지워지면 자식 테이블의 데이터도 함께 지워짐
ON DELETE SET NULL 옵션도 가능한데 부모테이블의 데이터가 지워질 경우 자식테이블의 값을 NULL로 설정
'DataBase > DBMS' 카테고리의 다른 글
10. JOIN(조인) : SQL의 꽃1 (조인, ANSI조인) (0) | 2021.02.22 |
---|---|
9-2. 두개의 컬럼을 묶어서 PK 설정, 하나의 컬럼에 두가지 제약조건 설정 (0) | 2021.02.18 |
9.제약조건 : 데이터 추가, 수정, 삭제하는 가운데 DB의 무결성 유지 (0) | 2021.02.18 |
8.DML : INSERT, UPDATE, DELETE (0) | 2021.02.18 |
7. 자료형 (문자형, 숫자형, 날짜형, 대용량) (0) | 2021.02.18 |