DML(Data Manipulation Language)
- 데이터 조작 언어
- 데이터를 조작(선택,삽입,수정,삭제) 하는 데 사용하는 언어이다.
- DML 구문이 사용되는 대상은 테이블의 행
- DML 사용하기 위해서는 꼭 그 이전에 테이블이 정의되어 있어야 한다.
- SQL문 중 SELECT, INSERT, UPDATE, DELETE가 이 구문에 해당된다.
- 트랜잭션(Transaction)이 발생하는 SQL도 이 DML에 속한다
- 테이블의 데이터를 변경(입력/수정/삭제)할때 실제 테이블에 완전히 적용하지 않고 임시로 적용시키는 것
- 취소가 가능하다.
DDL(Data Definition Language)
- 데이터 정의 언어
- 데이터베이스, 테이블, 뷰, 인덱스 등의 데이터베이스 개체를 생성/삭제/변경하는 역할
- CREATE, DROP, ALTER, RENAME, TRUNCATE 구문
- DDL은 트랜잭션 발생시키지 않음
- ROLLBACK이나 COMMIT 사용 불가
- DDL문은 실행 즉시 MYSQL에 적용된다.
DCL(Data Control Language)
- 데이터 제어 언어
- 사용자에게 어떤 권한을 부여하거나 빼앗을때 주로 사용하는 구문
- GRANT, REVOKE
TCL(Transaction Control Language)
- 트랜잭션 제어어
- 논리적인 작업의 단위를 묶어서 DML에 의해 조작된 결과를 작업단위별로 제어한다.
- COMMIT, ROLLBACK, SAVEPOINT