본문 바로가기

DataBase

[DB] DDL, DML, DCL

종류 명령어 설명
DML - 데이터 조작어
(DML :  Data Manipulation Language)
SELECT  데이터베이스에 들어 있는 데이터를 조회하거나 검색하기 위한 명령어.
INSERT
UPDATE
DELETE
데이터베이스에 들어 있는 데이터 삽입, 수정, 삭제의 명령어.
DDL - 데이터 정의어
(DDL : Data Definition Language)
CREATE
ALTER
DROP
RENAME
TRUNCATE 
데이터 구조를 정의하는데 사용되는 명령어들로 (생성, 변경, 삭제, 이름변경) 데이터 구조와 관련된 명령어.
DCL - 데이터 제어어
(DCL : Data Control Language) 
GRANT
REVOKE
데이터베이스에 접근하고 객체들을 사용하도록 권한을 주고 회수하는 명령어.
TCL -트랜잭션 제어어
(TCL : Transaction Control Language)
COMMIT
ROLLBACK
SAVEPOINT
논리적인 작업의 단위를 묶어서 DML에 의해 조작된 결과를 작업단위(트랜잭션) 별로 제어하는 명령어.

Transaction?

- 데이터베이스 내에서 하나의 그룹으로 처리되어야 하는 명령문들을 모아 놓은 논리적인 작업 단위.

- 데이터베이스 응용 프로그램은 트랜잭션들의 집합으로 정의 할 수 있다.

- 여러 단계의 처리를 하나의 처리처럼 다루는 기능이다.

- 여러 개의 명령어의 집합이 정상적으로 처리되면 정상 종료된다.

- 하나의 명령어라도 잘못되면 전체 취소된다.

- 트랜잭션을 쓰는 이유는 데이터의 일관성을 유지하면서 안정적으로 데이터를 복구하기 위함이다.

 

Transaction의 특징

- 원자성 : 트랜잭션이 데이터베이스에 모두 반영되던가, 전혀 반영되지 않던가 해야한다.

- 지속성 : 트랜잭션이 성공적으로 완료됐을 경우, 결과는 영구적으로 반영되어야 한다.

- 독립성 : 둘 이상의 트랜잭션이 동시에 병행되고 있을 경우 어느 하나의 트랜잭션이 다른 트랜잭션에 영향을 줄 수 없다.

- 일관성 : 트랜잭션의 작업 처리 결과가 항상 일관성이 있어야 한다.

'DataBase' 카테고리의 다른 글

[SQL] NULL 관련 함수  (0) 2023.03.20
TOP, LIMIT, ROWNUM  (0) 2023.03.20
MySQL Foregin Key 설정  (0) 2023.03.20
SQL Constraints  (0) 2023.03.20
Commit, Rollback, Save Point  (0) 2023.03.20