Programming/SQL
[SQL] SQL의 종류와 정의
앵도라지
2023. 2. 4. 20:20
일상 생활에서 쉽게 접할 수 있는 엑셀 역시 데이터베이스 중 하나다.
이 데이터베이스를 다루기 위한 언어가 SQL인데, 쉽게 말해 데이터를 뽑아내는 언어라고 할 수 있다.
SQL에 대해서 좀 더 자세히 알아보자.
1. 개념
- SQL은 Structured Query Language의 줄임말로, 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 절차형 프로그래밍 언어다.
- SQL은 관계형 데이터베이스에 대해서 데이터의 구조를 정의, 데이터 조작, 데이터 제어 등을 할 수 있다.
- 관계형 데이터베이스(RDBMS)는 데이터베이스를 연결하고, SQL문을 사용해 데이터베이스를 누구나 쉽게 사용할 수 있도록 한다.
2. SQL 종류
앞서 말했듯, SQL은 데이터의 정의, 데이터 조작, 데이터 제어 등의 기능을 지원한다.
이를 다시 종류 별로 나누어 설명할 수 있다.
- DDL : Data Definition Language
- 관계형 데이터베이스의 구조를 정의하는 언어이다.
- CREATE, ALTER, DROP, RENAME, TRUNCATE문이 있다.
- DML : Data Manipulation Language
- 테이블에서 데이터를 입력, 수정, 삭제, 조회한다.
- INSERT, UPDATE, DELETE, SELECT문이 있다.
- DCL : Data Control Language
- 데이터베이스 사용자에게 권한을 부여하거나 회수한다.
- GRANT, REVOKE문이 있다.
- TCL : Transaction Control Language
- 트랜잭션을 제어하는 명령어이다.
- COMMIT, ROLLBACK, SAVEPOINT문이 있다.
- DDL문은 데이터베이스 테이블을 생성하거나 변경, 삭제하는 것으로 데이터를 저장할 구조를 정의하는 언어이다.
- DML은 데이터 구조가 DDL로 정의되면 해당 데이터 구조에 데이터를 입력하거나 수정, 삭제, 조회할 수 있다.
- DCL은 DDL로 정의된 구조에 어떤 사용자가 접근할 수 있는지 권한을 부여하는 것이다.
- 우선 권한 부여가 되면, DDL로 데이터 구조를 정의할 수 있다.
- 정의된 구조의 데이터를 삽입 및 삭제 할 수 있고 이를 개발자 혹은 사용자가 조회하는 것이다.
- 트랜잭션은 데이터베이스의 작업을 처리하는 단위이다.
3. SQL 실행 순서
작성된 SQL문은 아래 3단계를 거쳐서 실행된다.
- 파싱(Parsing)
- SQL문의 문법을 확인하고 구문분석한다.
- 구문 분석한 SQL문은 Library Cache에 저장한다.
- 실행(Execution)
- 옵티마이저(Optimizer)가 수립한 실행 계획에 따라 SQL을 실행한다.
- 인출(Fetch)
- 데이터를 읽어서 전송한다.
구체적인 SQL 문법은 다음 게시글에서 확인할 수 있다.
2023.02.04 - [Programming/SQL] - [SQL] DDL (테이블 생성, 변경, 삭제)
[SQL] DDL (테이블 생성, 변경, 삭제)
데이터베이스의 데이터를 조회하고, 수정하거나 삭제하려면, 그 이전에 테이블이 존재해야 한다. DDL은 (Data Definition Language) 관계형 데이터베이스의 구조를 정의하는 언어다. (DDL, DML, DCL, TCL에 대
cherish22.tistory.com