Database/SQL

[SQL] #10 SQL 데이터 정의어(DDL) 완전 정리, CREATE부터 DROP까지

TOASTDEV 2025. 8. 1. 16:00
반응형

 

안녕하세요 토스트데브입니다 😊
오늘은 SQL에서 테이블, 컬럼, 제약 조건 등을 만들고 수정할 때 사용하는 명령어, 바로 데이터 정의어(DDL)에 대해 알아보겠습니다!
SQL을 처음 배우는 분들이라면 꼭 한 번 정리하고 넘어가야 할 중요한 개념이에요.

 

 

🏗️ 데이터 정의어 DDL이란?

DDL(Data Definition Language)은 데이터베이스의 구조를 정의하거나 변경하는 SQL 명령어입니다.
즉, 테이블을 만들고, 바꾸고, 삭제할 때 사용하는 명령어라고 보면 됩니다.

 

 

🧩 주요 DDL 명령어

1️⃣ CREATE – 새 객체 생성

CREATE TABLE users (
  id INT PRIMARY KEY,
  name VARCHAR(50),
  email VARCHAR(100),
  created_at DATETIME
);

➡️ users라는 테이블을 새로 생성합니다.

CREATE는 테이블뿐만 아니라, 데이터베이스(DB), 뷰(View), 인덱스(Index), 프로시저(Procedure) 등도 생성할 수 있어요.

 

2️⃣ ALTER – 기존 객체 수정

ALTER TABLE users ADD phone VARCHAR(20);

 

➡️ users 테이블에 phone 컬럼을 추가합니다.

ALTER TABLE users DROP COLUMN email;

 

➡️ email 컬럼 삭제

ALTER TABLE users MODIFY name VARCHAR(100);

➡️ name 컬럼의 데이터 타입 변경

 

3️⃣ DROP – 객체 완전 삭제

DROP TABLE users;

➡️ users 테이블을 데이터 포함 통째로 삭제합니다. 되돌릴 수 없어요 ⚠️

 

4️⃣ TRUNCATE – 데이터만 전부 삭제 (구조는 유지)

TRUNCATE TABLE users;

➡️ 테이블 구조는 남기고, 데이터만 전부 삭제합니다.
DELETE보다 빠르지만 롤백 불가능한 점 주의!

 

5️⃣ RENAME – 객체 이름 변경

RENAME TABLE users TO members;

➡️ 테이블 이름을 변경합니다.

 

 

🔐 추가 개념: 제약조건 (Constraints)

DDL을 통해 테이블을 정의할 때 데이터 무결성을 지키기 위해 제약 조건을 설정할 수 있습니다.

제약조건 설명
PRIMARY KEY 기본 키 (고유 + NOT NULL)
UNIQUE 중복 불가
NOT NULL 반드시 값 존재
DEFAULT 기본값 지정
FOREIGN KEY 외래 키, 참조 무결성 보장

 

 

📝 마무리

DDL은 데이터의 “그릇”을 정의하는 역할을 합니다.
어떤 테이블을 만들고, 어떤 컬럼이 있으며, 어떤 제약 조건이 있는지를 설계하는 단계죠.
SQL을 처음 배우는 입문자라면, DDL을 정확히 이해하는 것이 데이터베이스를 잘 다루는 첫걸음입니다!

 

 

#SQL #SQL기초 #DDL #데이터정의어 #CREATE #ALTER #DROP #TRUNCATE #테이블생성 #DBMS #SQL문법 #제약조건 #SQL강의 #MySQL

반응형