eunzae's develog
[SQL]SQL 문장 종류(DML, DDL, DCL, TCL) 본문
DML(Data Manuplation Language): 데이터 조작어
- SELECT: 조회
- INSERT, UPDATE, DELETE: 데이터에 변형(데이터 삭제, 수정, 삽입)
* 절차적 데이터 조작어 vs 비절차적 데이터 조작어
- 절차적 데이터 조작어: 사용자가 어떤(what) 데이터를 원하고 해당 데이터를 얻기 위해서는 어떻게(how) 처리해야 하는지를 설명한다.
- 비절자적 데이터 조작어: 사용자가 어떤(what) 데이터를 원하는지만 설명한다. 즉, 해당 데이터를 얻으려면 어떻게(how) 처리해야 하는지는 DBMS에 맡긴다.
* 호스트 프로그램 속에 삽입되어 사용되는 DML 명령어들은 데이터 부속어(Data Sub Language)라고 한다.
DDL(Data Definition Language): 데이터 정의어
- CREATE, ALTER, DROP, TRUNCATE, RENAME: 테이블, 컬럼 같은 데이터 구조 정의(구조 생성, 변경, 삭제)
* DROP, TRUNCATE, DELETE 비교
DROP | TRUNCATE | DELETE |
DDL | DDL(일부 DML) | DML |
ROLLBACK 불가능 | ROLLBACK 불가능 | COMMIT 이전 ROLLBACK 가능 |
Auto Commit | Auto Commit | 사용자 Commit |
테이블이 사용했던 Storage를 모두 Release | 테이블이 사용했던 Storage 중 최초 테이블 생성 시 할당된 Storage만 남기고 Release | 데이터를 모두 Delete 해도 사용했던 Storage는 Release 되지 않음 |
테이블의 정의 자체를 완전히 삭제함 | 테이블을 최초 생성된 초기 상태로 만듬 | 데이터만 삭제 |
DCL(Data Control Language): 데이터 제어어
- GRANT, REVOKE: 권한 관리
TCL(Transaction Control Language): 트랜잭션 제어어
- COMMIT, ROLLBACK, SAVEPOINT: 논리적인 작업의 단위를 묶어서 DML에 의해 조작된 결과를 작업단위(트랜잭션) 별로 제어하는 명령어
REFERENCE
https://terms.naver.com/entry.naver?docId=3431107&cid=58430&categoryId=58430
데이터 조작어
데이터 조작어(DML;Data Manipulation Language)는 사용자가 데이터의 삽입·삭제·수정·검색 등의 처리를 데이터베이스 관리 시스템에 요구하기 위해 사용하는 데이터 언어다. 데이터 정의어를 이용해
terms.naver.com
'Language > SQL' 카테고리의 다른 글
[SQL]SELECT 문장 실행 순서 (0) | 2022.05.02 |
---|---|
[SQL]단일행 NULL 관련 함수 (0) | 2022.05.02 |
[SQL]튜닝 실무 (0) | 2022.04.25 |
[SQL]만 나이 계산 쿼리 (0) | 2022.04.25 |
[SQL]TCL(트랜잭션 제어어) (0) | 2022.04.25 |