본문 바로가기
데이터베이스

[Oracle] 1. SQL DDL, DML, DCL 이란

by jwKim96 2019. 9. 11.

SQL, 그리고 DDL, DML, DCL 이란 무엇인가를 짚고 넘어가보자.

 

 

1. SQL (Structured Query Language)

 

SQL 이란 데이터베이스에 Query를 요청하기 위한 구조화된(Structured) 언어(Language)이다.

 

Query란 질의어 라고하며, 데이터베이스 혹은 정보 시스템에 정보 요청을 할 수 있는 컴퓨터 언어이다.

 

 

쉽게 말하면,

 

Query란 DB 혹은 정보시스템에 질문하기위한 언어

 

SQL은 Query를 구조화 시킨 언어

 

원래는 각 정보시스템 마다, 데이터베이스마다 질의어가 달라서 시스템 구성을 변경하게 되면

 

질의어를 다시 배워야 했다고 한다.

 

하지만 각 데이터베이스 회사의 협업(?)을 통해 SQL을 어느정도 통일되어 SQL만 공부하면

 

왠만한 데이터베이스에서 추가적인 공부 없이 SQL을 사용할 수 있다.

 

 

 

 

 

2. DDL (Data Definition Language)

우리말로 데이터 정의어 라고 한다.

 

'정의어' 라고해서 정의만 한다고 생각할 수 있지만,

 

DDL을 통해서는 [ 생성, 삭제, 수정 ] 등을 할 수 있다.

 

주로 

 

CREATE TABLE ~ 

DROP TABLE ~

ALTER TABLE ~

 

등의 명령어가 쓰인다.

 

이들을 보면 데이터를 집적 다루는 것이 아니라,

 

데이터를 담을 공간을 다룬다는 것을 알 수 있다.

 

 

 

3. DML(Data Manipulation Language)

우리말로 데이터 조작어 라고한다.

 

이전에 DDL을 통해 데이터를 담을 공간의 구조(틀)을 만들어 놓는다면,

 

이 언어는 데이터를 집적 다룬다.

 

SELECT ~

INSERT ~

UPDATE ~

DELETE ~

등의 명령어가 있고, 

 

각각의 이는 이미 만들어진 테이블(데이터를 담을 공간)에 접근하여

 

조회( SELECT )

입력( INSERT )

수정( UPDATE )

삭제( DELETE )

 

등을 할 수 있다.

 

4. DCL(Data Control Language)

DCL이란 데이터 제어어 라고한다.

 

데이터에 접근할 수 있는 권한을 제어한다.

 

GRANT ~

REVOKE ~

 

등의 명령어를 통해 권한을 부여(GRANT)

그리고 권한 회수(REVOKE) 할 수 있다.

반응형