1018 데이터베이스 정리
관계 데이터 삭제하는 방법
MY SQL
* on delete cascade : 부모테이블에 있는 데이터를 지우면 자식 테이블에 있는 데이터도 삭제.
* on delete set null : 부모테이블에 있는 데이터를 지우면 자식테이블에 있는 데이터에 null.
* on delete no action : 부모테이블에 있는 데이터를 지우면 자식테이블에 데이터 남아있음
* on delete set default : 부모테이블에 있는 데이터를 지우면 자식 테이블 데이터 default 값으로 변경
* on delete restrict(기본값) : 자식테이블에서 부모테이블 사용하고 있으면 삭제 불가능
* 자식테이블(emp)에서 부모테이블(dept) PK(deptno)를 사용하고 있다면, 자식테이블에 있는 FK(deptno)는 지울 수 없다.
예)
* dept 테이블에 있는 30번 부서를 지우시오
delete from dept where deptno = 30;
-- 지울 수 없음. 왜냐면 emp에서 쓰고 있기 때문
* 부서추가
insert into dept(deptno,dname,loc) values(60,'디자인팀','계룡')
* dept 테이블에 있는 60번 부서를 지우시오
delete from dept where deptno = 60;
-- 지울 수 있음! 쓰고 있지 않은 부서이기 때문!
ERwin data-modeler
* 사용자가 차량 별 운행기록을 확인할 수 있도록 운행기록 테이블 만들기
댓글
댓글 쓰기