Database DDL

Goofi·2023년 8월 9일
0
post-custom-banner

DDL

데이터베이스에서는 모든 작업을 SQL문을 이용해 작업한다.
SQL문은 다루는 객체나 용도에 따라 그룹핑하여 나눌 수 있다. 종류로는 DDL, DML, DCL이 있다.

DDL(Data Definition Language) - 데이터 정의어
데이터베이스를 정의하는 언어를 말하며 데이터를 생성하거나 수정, 삭제 등 데이터의 전체 골격을 결정하는 역할의 언어를 말한다.

CREATE

  • 데이터 베이스, 테이블 등을 생성하는 역할을 한다.
    ALTER
  • 테이블을 수정하는 역할을 한다.
    DROP
  • 데이터베이스, 테이블을 삭제하는 역할을 한다.

TRUNCATE

  • 테이블을 초기화 시키는 역할을 한다.

데이터베이스 생성, 삭제

CREATE(생성)

CREATE DATABASE 데이터베이스이름

DROP(삭제)

DROP DATABASE 데이터베이스이름

테이블 생성

CREATE TABLE 테이블명 (
	컬럼1이름 datatype,
    컬럼2이름 datatype,
    컬럼3이름 datatype,
    ...)

예시)

CREATE TABLE new_table(
	id INT,
    이름 VARCHAR(100),
    나이 INT
)

마지막 줄에는 콤마(,) 넣으면 안된다.

❗️주의
연락처 컬럼을 지정할때

CREATE TABLE new_table(
	id INT,
    이름 VARCHAR(100),
    나이 INT,
    연락처 INT
)

연락처를 INT 데이터타입으로 지정할 경우 컬럼에 01012341234 저장하면 1012341234만 남는다. 그렇기 때문에 VARCHAR(10)으로 변경해줘야 한다.

DEFAULT

CREATE TABLE new_table2 (
	id INT,
    이름 VARCHAR(100) DEFAULT '홍길동',
    나이 INT
)

테이블 삭제

DROP TABLE 테이블명

컬럼 생성, 변경, 삭제

생성

ALTER TABLE 테이블명 ADD 컬럼명 VARCHAR(100);

변경

ALTER TABLE 테이블명 MODIFY COLUMN 컬럼명 datatype;

❗️이미 컬럼에 '가나다' 이런 문자가 있는 경우엔 INT 타입으로 변경이 불가능하다.
이런식으로 컬럼을 한 번 만들어 놓으면 변경이 불가능할 때가 많아서 변경이 필요하면 새로 테이블 만들어서 데이터를 옮기는 식으로 하거나 그런 경우들이 있다.

제거

ALTER TABLE 테이블명 DROP COLUMN 컬럼명;

참고

  • 데이터타입을 지정할 때 생각했던 것 보다 더 큰 문자나 숫자가 들어올 수 있으므로 글자 수 제한은 넉넉하게 잡는게 좋다.
  • DBeaver같은 GUI 툴이 있기 때문에 DDL은 안외워도 전혀 상관없다.
profile
오늘보단 내일이 강한 개발자입니다!🧑🏻‍💻
post-custom-banner

0개의 댓글