DDL은 데이터 정의어를 뜻한다. DB를 구성하는 물리적 객체(사용자, 테이블, 인덱스, 뷰, 트리거, 프로시저, 사용자 정의 함수 등)을 정의/변경/제거하는 데 사용한다.
테이블의 무결성 보장을 위해 제약조건을 설정할 수도 있다.
구분 | 설명 |
---|---|
CREATE | 객체를 생성할때 사용한다. |
ALTER | 객체를 수정할때 사용한다. |
DROP | 객체를 삭제할때 사용한다. |
DDL 쿼리 예제
테이블 생성
CREATE문을 통해 테이블을 생성하는 쿼리이다.
SELECT문으로 테이블을 생성하는 방법도 있다. (테이블 구조와 일부 데이터는 똑같이 복사되지만 제약조건은 복사되지 않는다.)
외래키 생성
생성된 테이블에 외래키(FK)를 생성하는 쿼리이다.
칼럼 추가
칼럼 삭제
데이터형 및 제약조건 변경
제약조건 삭제
칼럼명 변경
테이블명 변경
테이블 내 데이터 제거
테이블 제거
RESTRICT 명령어를 붙이면 삭제할 테이블이 참조 중인 경우에 테이블을 삭제하지 않는다.
CASCADE 명령어를 붙이면 삭제할 테이블을 참조 중인 모든 요소를 전부 삭제한다.