1. DDL이란?

DDL은 Data Definition Language의 약자 데이터를 정의하는 언어로,

테이블 생성(CREATE), 생성된 테이블 구조의 변경(ALTER), 테이블 삭제(DROP)로 분류할 수 있습니다.

 

 

 

2. CREATE

  • 테이블 생성
CREATE TABLE 테이블이름 (
    속성이름 데이터타입 [NOT NULL] [DEFAULT 기본값]
    [PRIMARY KEY (속성리스트)]
    [UNIQUE (속성리스트)]
    [FOREIGN KEY (속성리스트) REFERENCES 테이블이름(속성리스트)]
    [ON DELETE 옵션] [ON UPDATE 옵션]
    [CONSTRAINT 이름] [CHECK(조건)]
);

속성의 데이터 타입은 INT(정수), SMALLINT(INT보다 작은 정수), CHAR(n)(길이가 n인 고정 길이의 문자열), VARCHAR(n)(최대 길이가 n인 가변 길이의 문자열), NUMERIC(p, s)(고정 소수점 실수, p는 소수점을 제외한 전체 숫자의 길이고, s는 소수점 이하 숫자의 길이), FLOAT(n)(길이가 n인 부동 소수점 실수), REAL(부동 소수점 실수), DATE(연, 월, 일로 표현되는 날짜), TIME(시, 분, 초로 표현되는 시간), DATETIME(날짜와 시간) 등이 있습니다.

ON DELETE 옵션에는 NO ACTION(튜플을 삭제하지 못하게 함), CASCADE(관련 튜플을 함께 삭제함), SET NULL(관련 튜플의 외래키 값을 NULL로 변경함), SET DEFAULT(관련 튜플의 외래키 값을 미리 지정한 기본 값으로 변경함)이 있습니다.

ON UPDATE 옵션에는 NO ACTION(튜플을 변경하지 못하도록 함), CASCADE(관련 튜플에서 외래키 값을 함께 변경함), SET NULL(관련 튜플의 외래키 값을 NULL로 변경함), SET DEFAULT(관련 튜플의 외래키 값을 미리 지정한 기본 값으로 변경함)이 있습니다.

 

 

 

3. ALTER

  • 새로운 속성의 추가
ALTER TABLE 테이블이름 ADD 속성이름 데이터타입 [NOT NULL] [DEFAULT 기본값];
  • 기존 속성의 삭제
ALTER TABLE 테이블이름 DROP COULMN 속성이름;
  • 새로운 제약조건의 추가
ALTER TABLE 테이블이름 ADD CONSTRAINT 제약조건이름 제약조건내용;
  • 기존 제약조건의 삭제
ALTER TABLE 테이블이름 DROP CONSTRAINT 제약조건이름;

 

 

 

4. DROP

  • 테이블의 삭제
DROP TABLE 테이블이름;

+ Recent posts