DDL이란?
DB 구조, 데이터 형식, 접근 방식 등 DB를 구축하거나 수정할 목적으로 사용하는 언어이다.
CREATE SCHEMA 스키마명 AUTHORIZATION 사용자_ID;
CREATE DOMAIN 도메인명 [AS] 데이터_타입
[DEFAULT 기본값]
[CONSTRAINT 제약조건명 CHECK (범위값)];
EX)
CREATE DOMAIN SEX CHAR(1)
DEFAULT '남'
CONSTRAINT VALID-SEX CHECK (VALUE IN('남'.'여'));
CREATE TABLE 테이블명
(속성명 데이터_타입 [DEFAULT 기본값][NOT NULL],
[PRIMARY KEY(기본키_속성명, ...)],
[UNIQUE(대체키_속성명, ...)],
[FOREIGN KEY(외래키_속성명, ...)
REFERENCES 참조테이블(기본키_속성명, ...)]
[ON DELETE 옵션]
[ON UPDATE 옵션],
[CONSTRAINT 제약조건명][CHECK (조건식)]
);
PRIMARY KEY : 기본키로 사용할 속성 또는 속성의 집합을 지정한다.
UNIQUE : 대체키로 사용할 속성 또는 속성의 집합을 지정하는 것으로
UNIQUE로 지정한 속성은 중복된 값을 가질 수 없다.
FOREIGN KEY ~ REFERENCES ~
참조할 다른 테이블과 그 테이블을 참조할 때 사용할 외래키 속성을 지정한다.
외래키가 지정되면 참조 무결성의 CASCADE 법칙이 적용된다.
ON DELETE 옵션 , ON UPDATE 옵션
참조 테이블의 튜플이 삭제되거나, 참조 속성 값이 변경되었을 때 기본 테이블이 취하는 동작
옵션 : NO ACTION, CASCADE, SET NULL, SET DEFAULT
CONSTRAINT : 제약 조건의 이름을 지정한다. 이름을 지정할 필요가 없으면 CHECK 절만 사용하여 속성 값에 대한 제약 조건을 명시한다.
CHECK : 속성 값에 대한 제약 조건을 정의한다.