1. 절차형 SQL 작성
< 트리거 >
- 트리거 : 데이터베이스 시스템에서 삽입, 갱신, 삭제 등의 이벤트가 발생할때마다 관련 작업이 자동으로 수행되는 절차형 SQL
- 구성 : 선언부 / 이벤트부 / 시작,종료부 / 제어부 / SQL / 예외부
< 이벤트 >
- 이벤트 : 특정 시간에 특정한 쿼리, 프로시저, 함수 등을 실행시키는 기능
< 사용자 정의 함수 >
- 사용자 정의함수 : 절차형 SQL을 활용하여 일련의 연산 처리 결과를 단일 값으로 반환할 수 있는 함수
- 구성 : 선언부 / 시작,종료부 / 제어부 / SQL / 예외부 반환부
< SQL 문법 >
- SQL 문법 : 데이터베이스를 접근하고 조작하는 데 필요한 표준 언어를 활용할 수 있게 해주는 규칙
- 분류 :
데이터 정의어(DDL) | - 데이터를 정의하는 언어 - CREATE, ALTER, DROP, TRUNCATE |
데이터 조작어(DML) | - 데이터베이스에 저장된 자료들을 입력, 수정, 삭제, 조회하는 언어 - SELECT, INSERT, UPDATE, DELETE |
데이터 제어어(DCL) | - 데이터베이스 관리자가 데이터 보안, 무결성 유지, 병행 제어, 회복을 위해 DBA가 사용하는 제어용 언어 - GRANT, REVOKE |
2. 응용 SQL 작성
< 데이터 조작어 >
- 유형 :
SELECT | - SELECT / FROM / WHERE / GROUP BY / HAVING / ORDER BY |
INSERT | INSERT INTO 테이블명(속성명1, ...) VALUES (데이터1, ...) |
UPDATE | UPDATE 테이블명 SET 속성명 = 데이터 WHERE 조건 |
DELETE | DELETE FROM 테이블명 WHERE 조건 |
< 데이터 제어어 >
- 기능 : 데이터 보안 / 무결성 유지 / 병행수행 제어 / 회복
- 유형 :
- DCL : GRANT, REVOKE
- DCL / TCL : COMMIT, ROBBACK, SAVEPOINT(CHECKPOINT)
< 윈도 함수 >
- 윈도 함수 : 행과 행 간의 관계를 쉽게 정의하기 위해 만든 함수. OLAP 함수라고도 한다.
- 분류 : 집계 함수 / 순위 함수 / 행 순서 함수 / 그룹 내 비율 함수
- OLAP : 사용자가 동일한 데이터를 여러 기준을 이용하는 다양한 방식으로 바라보면서 다차원 테이블 분석을 할 수 있도록 도와주는 의사결정 지원 시스템
- OLAP 연산 : Roll-Up / Drill-Down / Slicing / Dicing
< 그룹 함수 >
- 그룹 함수 : 테이블의 전채 행을 하나 이상의 컬럼을 기준으로 컬럼 값에 따라 그룹화하여 그룹별로 결과를 출력하는 함수
- 유형 : ROLLUP / CUBE / GROUPING SETS
1. 기본 SQL 작성
< 데이터 정의어 >
- DDL의 대상 : 도메인 / 스키마 / 테이블 / 뷰 / 인덱스
- 명령어 : CREATE / ALTER / DROP / TRUNCATE
< 트랜잭션 >
- 트랜잭션 : 데이터베이스 시스템에서 하나의 논리적 기능을 정상적으로 수행하기 위한 작업의 기본 단위
- 특징 :
Atomicity 원자성 |
- 작업의 최소단위 - 연산 전체가 성공 또는 실패 |
Consistency 일관성 |
- 항상 일관된 데이터베이스 상태를 보존해야함 |
Isolation 격리성 |
- 연산의 중간 결과를 다른 트랜잭션이 접근 불가 |
Durability 영속성 |
- 트랜잭션의 결과는 영속적으로 데이터베이스에 저장 |
- 연산 :
- 원자성 주요 기법 : 커밋(Commit) / 롤백(RollBack)
- 일관성 주요 기법 : 병행 제어 (미보장 시 문제점-갱신 손실 / 현황 파악오류 / 모순성 / 연쇄복귀, 종류 - 로킹 / 낙관적 검증 / 타임스탬프 순서 / 다중버전 동시성 제어)
- 격리성 주요 기법 : 데이터베이스 고립화 수준
- 영속성 주요 기법 : 회복 기법 (로그 기반 회복 기법 / 체크 포인트 회복 기법 / 그림자 페이징 회복 기법)
- TCL 명령어 : 커밋 / 롤백 / 체크포인트
2. 고급 SQL 작성
< 뷰 >
- 뷰 : 논리 테이블로서, 사용자에게 테이블과 동일
- 특징 : 논리적 데이터 독립성 제공, 데이터 조작 연산 간소화, 보안 기능 제공, 뷰 변경 불가
< 인덱스 >
- 인덱스 : 데이터를 빠르게 찾을 수 있는 수단
- 종류 : 순서 인덱스 / 해시 인덱스 / 비트맵 인덱스 / 함수기반 인덱스 / 단일 인덱스 / 결합 인덱스 / 클러스터드 인덱스
- 스캔 방식 : 인덱스 범위 스캔 / 인덱스 전체 스캔 / 인덱스 단일 스캔 / 인덱스 생략 스캔
< 집합 연산자 >
- 집합 연산자 : 두 개 이상의 테이블에서 여러 개의 질의의 결과를 연결하여 하나로 결합하는 연산자
- 유형 : UNION / UNION ALL / INTERSECT / MINUS
< 조인 >
- 조인 : 두 개 이상의 테이블을 연결하여 데이터를 검색하는 방법
- 유형 :
논리적 조인 | 사용자 SQL문에 표현되는 테이블 결합 방식 | 내부 조인 / 외부 조인 / 교차 조인 / 셀프 조인 |
물리적 조인 | 데이터베이스 옵티마이저에 의해 내부적으로 발생하는 데이터 결합 방식 | 중첩 반복 조인 / 정렬 합병 조인 / 해시 조인 |
< 서브쿼리 >
- 서브쿼리 : SQL 문 안에 포함된 또 다른 SQL 문
- 유형(동작 방식) : 비연관 서브쿼리 / 연관 서브쿼리
- 유형(데이터 형태) : 단일 행 서브쿼리 / 다중 행 서브쿼리 / 다중 컬럼 서브쿼리
'8. 자격증 > 8-1. 정보처리기사' 카테고리의 다른 글
정처기 3-4. 물리 데이터베이스 설계 / 3-5. 데이터 전환 (0) | 2021.08.10 |
---|---|
정처기 3-3. 논리 데이터베이스 설계 (0) | 2021.08.09 |
정처기 2-5. 인터페이스 구현 (0) | 2021.08.05 |
정처기 2-4. 애플리케이션 테스트 관리 (0) | 2021.08.05 |
정처기 2-3. 제품 소프트웨어 패키징 (0) | 2021.08.03 |