SQL

[이론]SQL 언어 종류별 개념정리(DDL, DML, DCL, TCL)

노력하는 백곰 2024. 8. 4. 11:13

■ 요약 구분

1. SQL(Structured Query Language)

- SQL은 RDBMS를 사용하기 위해 필요한 표준 대화식 프로그래밍 언어

 

 

2. SQL 문법의 종류

□ 데이터 정의어(DDL, Data Definition Language) : DB를 생성하거나 테이블을 만드는 언어(예시, 테이블, 인덱스, 뷰 생성 및 삭제)
- 종류
  ①CREATE : 새로운 데이터베이스 관계(테이블)를 생성

  ②ALTER : 새로운 데이터베이스 관계(테이블)를 수정
  ③DROP : 새로운 데이터베이스 관계(테이블)를 삭제
  ④TRUNCATE : 데이터베이스 관계(테이블) 데이터를 제거(데이터 초기화)

 

□ 데이터 조작어(DML, Data Manipulation Language) : DB에 저장된 데이터를 조작(조회, 삽입, 수정, 삭제)하는 언어
- 종류
  ①SELECT : 데이터 조회
  ②INSERT : 데이터 삽입
  ③UPDATE : 데이터베이스 관계(테이블) 내, 데이터 수정
  ④DELETE : 데이터베이스 관계(테이블) 내, 데이터 삭제

 

데이터 제어어(DCL, Data Control Language) : DB 사용 권한을 설정하는 언어

- 종류
  ①GRANT : 특정 데이터베이스 사용자에게 특정 작업을 수행할 권한을 부여
  ②REVOKE : 특정 데이터베이스 사용자에게 특정 작업을 수행할 권한을 박탈 및 회수

□ 트랜젝션 제어어(TCL, Transaction Control Language) : DB에 트랜젝션을 제어하는데 사용하는 언어

- 종류

  ①COMMIT : 트랜젝션 처리가 정상적으로 종류되어 트랜젝션이 수행한 변경 내용을 DB에 반영하는 연산
  ②Rollback : 비정상적으로 트랜잭션 처리가 종료되어 DB일관성이 깨졌을 때 트랜잭션이 행한 변경 작업을 취소하고 이전으로 돌리는 연 산
  ③SvaePoint : 현재의 트랜잭션을 작게 분할하는 명령어

 

 

※ 헷갈리는 명령어 상세 비교분석

DELETE

- 데이터는 지워지지만, 테이블 용량은 줄어들지 않음

- 원하는 데이터만 삭제 가능

- 데이터를 삭제할 경우 복원 가능


TRUNCATE

- 데이터를 삭제하면 용량이 줄어듬(테이블이 삭제되지 않고 데이터만 삭제)

- 원하는 데이터만 삭제 불가능

- 데이터를 삭제할 경우 복원 불가능


DROP

- 테이블 전체를 삭제, 공간, 객체를 삭제

- 데이터를 삭제할 경우 복원 불가능