본문 바로가기
Database

[Database] SQL(1) | DDL

by spareone 2025. 4. 29.

DBMS를 사용하기 위해 SQL이라는 언어를 사용하게 됩니다.

SQL에는 2가지 종류가 있습니다. 테이블 자체를 생성하고 관리하는 정의문, 테이블 안 내용들을 관리하는 조작문으로 나뉘어집니다.

  1. DDL (Data Definition Language, 데이터 정의어)
    • 스키마
      • CREATE SCHEMA
      • DROP SCHEMA
    • 설계자 (DBA)
      • CREATE TABLE
      • DROP TABLE
      • ALTER TABLE
  2. DML (Data Manipulation Language, 데이터 조작어)
    • 질의어
      • SELECT
    • 갱신어
      • INSERT
      • DELETE
      • UPDATE

해당 포스트에서는 DDL만 다루며, DML은 다음 포스트에서 다룹니다.


  • 스키마
    • CREATE SCHEMA 명령을 통해 스키마를 생성합니다.
    • DROP TABLE 명령을 통해 스키마를 제거합니다.
  • 설계자 (DBA)
    • CREATE TABLE 명령을 통해 릴레이션(테이블)을 생성합니다.
    • PRIMARY KEY에서 기본 키를 구성하는 애트리뷰트를 지정합니다.
    • FOREIGN KEY에서 참조 무결성을 지정합니다.
      • ON DELETE나 ON UPDATE 작성 후 참조 무결성 제약조건을 위반했을 때 취하는 동작을 명시합니다.
        • SET NULL
        • CASCADE
        • SET DEFAULT
    • DROP TABLE를 통해 릴레이션(테이블)을 제거합니다.
      • RESTRICT 옵션을 통해 제약조건에 위배되지 않는(참조되지 않는 테이블) 테이블만 제거합니다.
      • CASCADE 옵션을 통해 테이블을 참조하는 모든 것들을 제거합니다. (연쇄 제거)
    • ALTER TABLE을 통해 테이블 정의를 변경합니다.
      • 애트리뷰트 추가/제거, 변경
      • 테이블 제약조건 추가/제거
      • RESTRICT 옵션을 통해 제약조건에 위배되지 않는(참조되지 않는 테이블) 테이블만 제거합니다.
      • CASCADE 옵션을 통해 테이블을 참조하는 모든 것들을 제거합니다. (연쇄 제거)
[그림 1] 테이블 생성 명령어 예시
[그림 2] 테이블 생성 명령어 예시 (제약조건 위반시 액션 추가)

 

댓글