[SQL]SQL이란

Dex·2023년 1월 15일
0

SQL

목록 보기
1/4

SQL(Structured Query Language, 구조적 질의 언어)이란?

  • SQL은 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다.
  • 관계형 데이터베이스 관리 시스템에서 자료의 검색과 관리, 데이터베이스 스키마 생성과 수정, 데이터베이스 객체 접근 조정 관리를 위해 고안되었다.
  • 많은 수의 데이터베이스 관련 프로그램들이 SQL을 표준으로 채택하고 있다.

SQL 실행 순서

SQL → Syntax Check → Semantic Check → Library Cache Check → Optimization → Raw Source Generation → Execution

  1. SQL : 쿼리 실행
  2. Syntax Check : 문법 체크
  3. Semantic Check : 객체(Object) 및 권한 유무 체크
  4. Library Cache Check : Cache에서 쿼리 저장 유무 검사 → 저장되어 있다면 Sofrt Parse로, Library Cache에 저장된 쿼리 바로 사용 → 저장되어 있지 않으면 Hard Parse로 다음 단계로 넘어간다.
  5. Optimization : 최적화한 쿼리 실행 계획을 만드는 단계
  6. Raw Source Generation : 위 Optimization 단계에서 생성된 실행 계획을 실제 실행할 수 있게 Formatting
  7. Execution : 실행

SQL 문법 종류

  • DDL(Data Definition Language) : 데이터 정의 언어
    데이터베이스 스키마와 설명을 처리하도록 정의하는 언어이다.
    데이터베이스나 테이블 생성/변경/삭제 등의 작업이 포함된다.
    예로 들면 CREATE(데이터베이스 개체(테이블, 인덱스, 제약조건 등)의 정의, DROP(데이터베이스 개체 삭제), ALTER(데이터베이스 개체 정의 변경) 등을 의미한다.
  • DML(Data Manipulation Language) : 데이터 조작 언어
    데이터 검색, 삽입, 변경, 삭제 수행을 조작하는 언어이다.
    실직적으로 저장된 데이터를 관리하고 처리할 때 사용한다.
    예로 들면 SELECT(테이블 데이터의 검색 결과 집합의 취득), INSERT(행 데이터 또는 테이블 데이터의 삽입), DELETE(데이터의 삭제), UPDATE(표 업데이트) 등을 의미한다.
  • DCL(Date Control Language) : 데이터 제어 언어
    사용자 관리 및 사용자별로 릴레이션 또는 데이터를 관리하고 접근하는 권한을 다루기 위한 언어이다.
    예로 들면 COMMIT(트랜잭션의 작업 결과를 반영), ROLLBACK(트랜잭션의 작업을 취소 및 원래대로 복구), GRANT(사용자에게 권한 부여), REVOKE(사용자 권한 취소) 등을 의미한다.

Reference
Blog
Blog
Blog

profile
성장하는 개발자

0개의 댓글