1. DML (Data Manipulation Language) : 데이터 조작 언어
- 데이터를 조작(선택, 삽입, 수정, 삭제)하는데 사용되는 언어
- DML구문의 사용 대상은 테이블의 행
- 그러므로 DML구문 사용 이전에 테이블이 정의되어 있어야 함
- SELECT, INSERT, UPDATE, DELETE 가 DML에 해당
2. DDL (Data Definition Language) : 데이터 정의 언어
- 데이터베이스, 테이블, 뷰, 인덱스 등의 데이터베이스 개체를 생성/삭제,변경하는 역할
- CREATE, DROP, ALTER 등
- DDL은 트랜잭션을 발생시키지 않는다.
* 트랜잭션 : 테이블의 데이터를 변경할 때 실제 테이블에 완전히 적용하지 않고, 임시로 적용시키는 것
- 따라서 되돌림(ROLLBACK)이나 완전적용(COMMIT)을 시킬 수가 없음, 즉 DDL문은 실행 즉시 적용됨
3. DCL (Data Control Language) : 데이터 제어 언어
- 사용자에게 어떤 권한을 부여하거나 뺴앗을 때 주로 사용하는 구문
- GRANT, REVOKE, DENY 등
4. TCL (Transaction Control Language) : 트랜잭션 제어 언어
- DML에 의해 조작된 결과를 작업단위(트랜잭션) 별로 제어하는 언어
- COMMIT, ROLLBACK 등
+ 트랜잭션
- 트랜잭션(transaction)은 하나의 작업을 수행하기 위해 필요한 데이터베이스의 연산들을 모아놓은 것으로, 데이터베이스에서 논리적인 작업의 단위이다.
- 장애가 발생했을 때 데이터를 복구하는 작업의 단위이기도 하다.
- 일반적으로 데이터베이스 연산은 SQL문으로 표현되므로, 트랜잭션은 작업 수행에 필요한 SQL문들의 모임이라고 보면 이해하기 쉽다.
- 트랜잭션의 예시를 통해 이해하고 싶다면 밑의 참고를 확인하자.
참고 : [네이버 지식백과] 트랜잭션의 개념 (데이터베이스 개론, 2013. 6. 30., 김연희)
'SQL' 카테고리의 다른 글
SQL 02. DML 기본 명령어 (0) | 2019.09.27 |
---|---|
SQL 01. DDL 기본 명령어 (0) | 2019.09.27 |
RDBMS 기본 개념과 사용법 (0) | 2019.09.26 |
SQL 설치 (0) | 2019.09.26 |
SQL과 NoSQL (0) | 2019.09.25 |
댓글