wms's Programming&Study

[SQLD - PART2] 1. SQL 기본 - ② SQL 종류 본문

데이터베이스/SQL Developer

[SQLD - PART2] 1. SQL 기본 - ② SQL 종류

wms2275 2019. 10. 13. 03:27

1) SQL(Structured Query Language)

- SQL은 관계형 데이터베이스에 대해서 데이터의 구조를 정의, 데이터 조작, 데이터 제어 등을 할 수 있는 절차형 언어

- SQL은 ANSI/ISO 표준을 준수하기 때문에 데이터베이스 관리 시스템이 변경되어도 그대로 사용할 수 있다.

 

2) SQL 종류

종류 설명

DDL

(Data Definition Language)

 - 관계형 데이터베이스 테이블을 생성, 변경, 삭제하는 것으로 데이터를 저장할 구조를 정의하는 언어

 - create, alter, drop, rename

DML

(Data Manipulation Language)

 - 데이터 구조가 DDL로 정의되면 테이블에 데이터를 입력, 수정, 삭제, 조회한다.

 - insert, update, delete, select

DCL

(Data Control Language)

 - 데이터베이스 사용자에게 권한을 부여하거나 회수

 - grant, revoke

TCL

(Transaction Control Language)

 - 트랜잭션을 제어하는 명령어

 - commit, rollback

 

< 작업순서 >

1. 데이터베이스의 사용자에게 권한을 부여 ()

2. DDL로 데이터 구조 정의

3. 데이터 입력

4. 개발자 및 사용자가 그 데이터 조회

 

  • 트랜잭션 - 데이터베이스의 작업을 처리하는 단위

- 트랜잭션의 특성

특성 설명

원자성

(Atomicity)

 - 트랜잭션은 데이터베이스 연산의 전부 또는 일부 실행만이 있다.

 - 트랜잭션의 처리가 완전히 끝나지 않았을 경우는 전혀 이루지지 않는 것과 같아야 한다.

일관성

(Consistency)

 - 트랜잭션 실행 결과로 데이터베이스의 상태가 모순되지 않아야 한다.

 - 트랜잭션 실행 후에도 일관성이 유지되어야 한다.

고립성

(Isolation)

 - 트랜잭션 실행 중에 생성하는 연산의 중간결과는 다른 트랜잭션이 접근할 수 없다.

 - 부분적인 실행결과를 다른 트랜잭션이 볼 수 없다.

연속성

(Durability)

 - 트랜잭션이 그 실행을 성공적으로 완료하면 그 결과는 영구적 보장이 되어야 한다.

 

3) SQL문의 실행 순서

실행 순서 설명

파싱

(Parsing)

 - SQL문의 문법을 확인하고 구문분석한다.

 - 구문분석한 SQL문은 Library Cache에 저장

실행

(Execution)

 - 옵티마이저가 수립한 실행계획에 따라 SQL을 실행

인출

(Fetch)

 - 데이터를 읽어서 전송

 

 

< 참고자료 >