DB

[데이터베이스] - DDL

LIRI 2024. 8. 22. 22:31

DDL(Data Definition Language) - 데이터 정의어

MySql 기준

데이터 베이스의 객체를 정의한다.
객체는 table, view, index 등이 있다.
테이블을 생성하거나 컬럼을 추가, 타입변경, 제약조건 지정, 수정하는 명령어

데이터베이스

1. 생성

CREATE DATEBASE dbname;

# 다국어 처리
CREATE DATABASE dbname
DEFAULT CHARACTER SET utf8mb3
COLLATE utf8mb3_general_ci;

# 이모지 문자 처리
CREATE DATABASE dbname
DEFAULT CHARACTER SET utf8mb4
COLLATE utf8mb4_general_ci;

2. 변경

ALTER DATABASE dbname
DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

3. 삭제

DROP DATABASE dbname;

4. 사용

USE dbname;

 

테이블

1. 생성

CREATE TABLE table_name(
	컬럼이름 타입 옵션,
    id VARCHAR(20) PRIMARY KEY,
    pw VARCHAR(20),
    name VARCHAR(20) NOT NULL,
);

옵션값으로 사용할 수 있는 것

  • NOT NULL : 널 허용 안됨
  • DEFAULT 기본값 : 값을 넣지 않았을 때 기본값으로 설정됨
  • UNSIGNED : 타입이 숫자인 경우에 해다 숫자가 0 이상의 양수로 제한됨.
  • AUTO INCREMENT : 새 레코드가 추가 될 때 마다 값을 1 씩 증가함
  • PRIMARY KEY : 고유 식별키. AUTO INCREMENT와 함께 사용할 때가 많음
  • FOREIGN KEY : 특정 테이블의 PK 컬럼에 저장되어있는 값만 저장. NULL 가능. references를 통해 어떤 컬럼의 데이터를 참조하는지 반드시 지정
  • UNIQUE : 중복된 값을 저장할 수 없음. NULL 가능

 

 

 

728x90