mun dev

[DB] DDL, DML, DCL 종류 및 개념 본문

DB

[DB] DDL, DML, DCL 종류 및 개념

mndev 2024. 1. 19. 14:14

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

데이터를 보관 및 관리하기 위해 사용하는 여러 객체의 생성, 수정, 삭제 등을 수행하는 명령어, DML과 달리 수행할 경우 COMMIT이 되므로 (즉, ROLLBACK을 통한 실행 취소가 불가함)에 주의

  • CREATE: 객체를 생성하는 명령어

  • ALTER: 객체의 구조를 변경하는 명령어, 객체에 따라 세부적인 명령어나 문법이 상이

  • RENAME: 객체의 이름을 변경하는 명령어

  • TRUNCATE: 테이블의 데이터를 제거하는데 사용하는 명령어

    *DELETE와 다르게 DDL이기 때문에 ROLLBACK되지 않으므로 사용에 주의

  • DROP: 객체를 제거할 때 사용하는 명령어

DML(Data Manipulation Language, 데이터 조작어)

사용자가 저장된 데이터를 실질적으로 처리하는데 사용

  • SELECT: 테이블에서 조건에 맞는 튜플 검색
  • INSERT: 테이블에 새로운 튜플삽입
  • DELETE: 테이블에서 조건에 맞는 튜플 삭제
  • UPDATE: 테이블에서 조건에 맞는 튜플의 내용 변경

DCL(Data Control Language, 데이터 제어어)

데이터의 보안, 무결성, 회복, 병행 수행 제어 등을 정의하는데 사용하는 언어

  • COMMIT: 명령에 의해 수행된 결과를 실제 물리적 디스크로 저장하고, 데이터베이스 조작 작업이 정상적으로 완료 되었음을 알려줌
  • ROLLBACK: 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래의 상태로 복구
  • GRANT: 데이터베이스 사용자에게 사용권한을 부여