DDL(Data Definition Language, 데이터 정의 언어)은 스키마 관리 언어로서 데이터베이스, 테이블, 뷰, 인덱스 등의 개체를 생성·삭제·변경한다. 실무에서는 개발·운영 단계에서 스키마를 설계할 때 사용한다. DDL은 자동 커밋되며 롤백이 불가하다는 특징이 있다.
종류
- CREATE 문: 데이터베이스 또는 테이블 생성과 설계 원칙
- DROP 문: 데이터베이스 또는 테이블 삭제
- ALTER 문: 테이블 구조 수정과 제약 조건 관리
- CREATE·DROP INDEX 문: 성능 최적화를 위한 인덱스 활용
- …
CREATE
CREATE는 데이터베이스 또는 테이블을 생성하는 DDL이다.
다음 예시는 example_db 데이터베이스를 생성하고 해당 데이터베이스를 선택한다.
CREATE DATABASE example_db;
USE example_db;다음 예시는 example_table 테이블을 생성한다. 소괄호 내부에 열에 관한 데이터 유형과 제약 조건을 명시한다.
CREATE TABLE example_table (
col_1 INT AUTO_INCREMENT PRIMARY KEY,
col_2 VARCHAR(50),
col_3 INT NOT NULL
);DROP
DROP은 데이터베이스 또는 테이블을 삭제하는 DDL이다.
다음 예시는 example_db 데이터베이스를 삭제한다.
DROP DATABASE example_db;다음 예시는 example_table 테이블을 삭제한다.
DROP TABLE example_table;ALTER
ALTER는 데이터베이스 또는 테이블의 속성 또는 설정을 변경하는 DDL이다.
다음 예시는 example_db 데이터베이스의 문자 집합을 utf8mb4로 변경한다.
ALTER DATABASE example_db CHARACTER SET utf8mb4;다음 예시는 example_table 테이블에 email 열을 추가한다.
ALTER TABLE example_table ADD COLUMN email VARCHAR(100);참고 문헌
- Do it! MySQL로 배우는 SQL 입문
- 핀테크 인턴십 코스 교안