SQL
SQL (Structured Query Language) 은 구조적인 질의 언어라는 것이다.
이 SQL 이라는 질의 언어를 통해서 데이터베이스를 제어, 관리한다.
SQL 은 다음 언어로 나눌 수 있다.
⒜ DDL : 데이터 정의 언어
⒝ DML : 데이터 조작 언어
⒞ DCL : 데이터 제어 언어
DDL
DDL (Data Definition Language) 는 데이터 베이스 스키마를 정의 하거나 조작하기 위해 사용한다.
SCHEMA, DOMAIN, TABLE, VIEW, INDEX 를 다음 명령어로 정의, 변경, 삭제한다.
⒜ CREATE : 정의
⒝ ALTER: 수정
⒞ DROP : 삭제
⒟ TRUNCATE : DROP 후 CREATE
* Oracle 11g 이전 버전과 MySQL은 DDL에 대해서 트랜잭션을 지원하지 않는다.
(Rollback 할 수 없고 Commit할 필요도 없다.)
DML
DML (Data Manipulation Language) 는 데이터를 조작 (조회, 추가, 변경, 삭제) 하기 위해 사용한다.
사용자가 응용 프로그램과 데이터 베이스 사이에 실질적인 데이터 처리를 위해서 주로 사용한다.
⒜ SELECT : 조회
⒝ INSERT : 추가
⒞ DELETE : 삭제
⒟ UPDATE : 변경
기본적인 위의 명령어 외에 LOCK, EXPLAIN, CALL 등도 DML에 포함 된다.
DQL
일부에서는 DML에서 SELECT 만을 따로 분리해서 DQL (Data Query Language) 나
간단히 QUERY 로 표현하기도 한다.
DCL
DCL (Data Control Language) 는 데이터를 제어하는 언어이다.
데이터의 보안, 무결성, 회복, 병행 수행제어 등을 정의하는데 사용한다.
⒜ COMMIT : 트랜잭션의 작업 결과를 반영
⒝ ROLLBACK : 트랜잭션의 작업을 취소 및 원래대로 복구
⒞ GRANT : 사용자에게 권한 부여
⒟ REVOKE : 사용자 권한 취소
TCL
일부에서는 DCL 에서 트랜잭션을 제어하는 명령인 COMMIT 과 ROLLBACK 만을 따로 분리해서 TCL (Transaction Control Language) 라고 표현하기도 한다.
출처: http://parkbosung.tistory.com/11 [IT 지식 쌓기]
'DataBase' 카테고리의 다른 글
MYSQL Rownum 행번호 매기기 (0) | 2018.10.19 |
---|---|
Mysql : 비어있는 자릿수 특정문자로 채우기 (0) | 2018.10.19 |
[MYSQL] DATEDIFF, TIMEDIFF 를 이용한 날짜 및 시간 계산 (0) | 2018.10.10 |
Mysql 암호화, 복호화 (0) | 2018.10.08 |
[DB] MySQL - DDL TRUNCATE과 DELETE (0) | 2018.10.08 |