[DB] DDL, DML, DCL - 데이터베이스 언어

데이터베이스 언어란?

데이터베이스 언어는 데이터베이스를 구축하고 이용하기 위한 데이터베이스 시스템과의 통신 수단이다. DBMS를 통해 사용되며, 기능과 사용 목적에 따라 DDL, DML, DCL로 구분된다.

DDL(Data Definition Language) - 데이터 저장 언어

DDL은 데이터베이스를 정의하는 언어이며 데이터를 생성, 수정, 삭제하는 등의 데이터의 전체 골격을 결정하는 역할을 한다. 스키마, 도메인, 테이블, 뷰, 인덱스 등을 정의하거나 변경, 삭제할 때 사용된다. 

 

예를 들어 아래와 같은 것들이 있다.

 

종류 역할
CREATE 데이터베이스, 테이블 생성
ALTER 테이블 수정
DROP 데이터베이스, 테이블 삭제
TRUNCATE 테이블 초기화

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

DML은 데이터베이스에 입력된 레코드를 조회하거나 수정, 삭제 등의 역할을 한다. 즉, 사용자로 하여금 데이터를 처리할 수 있게 하는 도구로서, 사용자와 DBMS 간의 인터페이스를 제공한다. 

 

예를 들어 아래와 같은 것들이 있다.

종류 역할
SELECT 데이터 조회
INSERT 데이터 삽입
UPDATE 데이터 수정
DELETE 데이터 삭제

DCL(Data Control Language) - 데이터 제어 언어

DCL은 무결성, 보안 및 권한 제어 회복 등의 역할을 한다. 주로 데이터를 보호하고 관리하기 위해 사용된다. DCL을 통해 불법적인 사용자로부터 데이터를 보호할 수 있고, 데이터 정확성을 위한 무결성을 유지할 수 있다. 또한 시스템 장애에 대비한 회복과 병행수행 제어가 가능하다.

 

예를 들어 아래와 같은 것들이 있다.

종류 역할
GRANT 특정 사용자에게 특정 작업 수행권한 부여
REVOKE 특정 사용자에게 특정 작업 수행권한 박탈, 회수
COMMIT 트랜잭션 작업 결과 반영
ROLLBACK 트랜잭션 작업 취소 및 복구

참고로 트랜잭션에 대해 알고 싶다면 다음을 참고하자.

 

[DB] 트랜잭션(Transaction)이란? | ACID

트랜잭션(Transaction)이란? 트랜잭션은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 수행되어야할 일련의 연산들을 의미한다. 트랜잭션은

code-lab1.tistory.com

 

 

[DB] 트랜잭션의 고립(격리) 수준(Isolation Level) | 고립 수준 예시

트랜잭션의 고립 수준(Isolation Level)이란? 트랜잭션의 고립 수준이란 트랜잭션들끼리 일관성 있는 데이터를 얼마나 허용할 것인지 정해놓은 수준이다. 즉, 트랜잭션 수행 중 다른 트랜잭션이 해

code-lab1.tistory.com

 

반응형

댓글

Designed by JB FACTORY