[sql]쿼리 dml, ddl, dcl 등 :: 개발/일상_Mr.lee

[sql]쿼리 dml, ddl, dcl 등

Posted by Mr.mandu.
2016. 4. 8. 19:30 개발/DB

매번 DML, DDL 이 머지??? 잊어버려서...검색하곤 했었습니다.

그래서 이참에 모두 적어놔야겟다고 생각했습니다. 간단히 정리해보겠습니다.


데이터 조작하기(DML)

DML - Data Manipulation Language

데이터 조회, 저장, 삭제할때 사용되는 SQL문장들을 말합니다.


데이터 조회 : select

데이터의 삭제 : delete

데이터의 저장 : insert, update


객체 조작하기(DDL)

DDL - Data Definition Language

데이터 베이스 객체들을 생성하는데 사용되는 SQL 문입니다.

데이터베이스 객체에는 데이터베이스, 테이블, 인덱스, 뷰, 트리거 등이 있으며 이를 생성하는 데도 SQL 문이 사용되는데, 이때 사용되는 SQL 문장들을 DDL이라고 한다.


데이터베이스 객체들 생성 : create

이미 생성된 객체들을 삭제 : drop, truncate(롤백을 사용하여 데이터를 복구할 수 없다.)

생성된 객체를 변경 : alter


truncate

 - delete보다 수행 속도가 빠르며 수행 비용이 적다.

 - 테이블에 있는 인덱스나 트리거에 영향을 주지 않고 데이터만 삭제한다.

 - 테이블 구조는 그대로 두고 메모리뿐만 아니라 데이터 파일에 있는 데이터까지 삭제


drop

 - 데이터뿐만아니라 테이블 구조까지 소멸


데이터 제어어(DCL)

DCL - Data Control Language

데이터베이스에 있는 데이터에 접근을 제어하는 언어


접근제어나 어떤 작업을 허용하는 권한을 주는 역할 : grant 

허용된 권한을 앲애는 역할 : revoke


이외에도

DQL(Data Query Language 질의어) 
  - select

TCL(Transaction Control Language 처리어)
  - commit, rollback, savepoint

도 있다