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

       사용자가 차량 별 운행기록을 확인할 수 있도록 운행기록 테이블 만들기










댓글

이 블로그의 인기 게시물

JAVA_Collection

JAVA_Collection2