함께 성장하는 기록장

꾸준한 기록이 모여 도서관이 될 수 있도록

DataBase

데이터베이스 언어 (DDL, DML, DCL)

H-jinny 2024. 7. 16. 23:47

데이터베이스 언어

데이터베이스 시스템에서의 작업을 위한 언어이다. 즉 데이터베이스 언어를 사용하여 데이터베이스에 접근할 수 있다. 흔히 접하는 SQL은 데이터베이스 언어의 표준으로 정해진 것이므로 데이터베이스 언어와 동치는 아니다. 

데이터베이스 언어로는 크게 세 가지(DDL, DML, DCL)가 있다.

 

 

 

데이터 정의 언어(DDL, Data Definition Language)

데이터베이스의 구조나 데이터 형식을 정의하는 언어이다.

어떤 데이터베이스, 스키마, 테이블이 필요한지 설계하며, 데이터가 준수해야 하는 제약조건이 포함되어 있다.

따라서 이들을 정의하거나 변경, 삭제 등을 할 때 사용하는 언어이다.

 

스키마, 도메인, 테이블, 뷰, 인덱스 등을 생성(CREATE), 수정(ALTER), 삭제(DROP), 초기화(TRUNCATE)문이 있다.

 

 

데이터 조작 언어(DML, Data Manipulation Language)

사용자로 하여금 데이터를 처리할 수 있게 하는 언어이다.

대표적인 데이터 조작 언어에는 질의어(Query Language)가 있으며, 질의어는 터미널에서 주로 이용되는 비절차적 데이터 언어이다.

SQL의 경우 데이터를 삽입(INSERT), 조회(SELECT), 갱신(UPDATE), 삭제(DELETE)문이 있다.

 

쿼리(Query)

쿼리는 데이터베이스에 질의하는 것을 의미한다. 데이터베이스에 원하는 테이블을 생성하거나 데이터를 요청하고 결과를 얻는, 언어가 아닌 행위를 말한다.

 

 

 

 

데이터 제어 언어(DCL, Data Control Language)

데이터베이스 사용 권한을 관리하는 언어로, 데이터를 보호하고 관리하는 목적으로 사용한다.

데이터의 무결성, 보안 및 권한 제어, 회복 등을 위한 기능이 있다.

 

데이터를 사용할 권한을 주고(GRANT), 권한을 박탈(REVOKE)하는 명령어가 있다.

 

권한으로는 데이터를 연결(CONNECT), 검색(SELECT), 추가(INSERT), 갱신(UPDATE), 삭제(DELETE), 사용(USAGE) 등이 있다.

 

 

 

이 외에도 트랜잭션을 제어하는 TCL(Transaction Control Languate)도 있다. 이는 수정한 작업을 저장하거나(COMMIT) 이전에 수정한 작업을 취소하고(ROLLBACK) 특정 지점으로 되돌릴 수 있는(SAVEPOINT) 역할을 수행한다.

 

 

 

참고

 

https://velog.io/@jmlee9707/DB-SQL%EB%AA%85%EB%A0%B9%EC%96%B4DDL-DML-DCL-TCL-%EB%8D%B0%EC%9D%B4%ED%84%B0-%ED%83%80%EC%9E%85

https://fomaios.tistory.com/entry/Database-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%96%B8%EC%96%B4%EB%9E%80-feat-DDLDMLDCLTCL

 

 

 

오타, 지적 감사합니다 :)

'DataBase' 카테고리의 다른 글

데이터베이스, DBMS와 SQL  (0) 2024.07.07