6장. DB 이론 서술
정보처리기사 실기 개념서 · 2부. 데이터베이스 · 절 5개
이 장에서 배우는 것
6-1. 이상과 함수적 종속
먼저 예제 테이블에서 무엇이 무엇을 결정하는지 적어 본다. 성적은 학번과 과목을 둘 다 알아야 정해진다({학번, 과목} → 성적). 반면 이름·학과는 학번만 알면 정해지고(학번 → 이름, 학과), 학과장은 학과만 알면 정해진다(학과…
6-2. 정규화 단계
정규화는 6-1의 이상을 없애려고 종속 관계를 기준으로 테이블을 쪼개는 과정이다. 한 단계 올라갈 때마다 "이전 단계 조건 + 한 가지"를 더 만족해야 하고, 쪼갠 테이블은 다시 조인하면 원래 자료로 돌아와야 한다(정보 손실 없는…
6-3. 키와 무결성
상자에서 본 키를 다섯 가지로 나눠 부른다. 출발은 유일성만 만족하는 슈퍼키다(예제의 {학번, 과목, 성적}도 행을 하나로 집어내므로 슈퍼키). 여기서 군더더기를 다 뺀 것이 후보키({학번, 과목})이고, 후보키가 여럿이면 하나를…
6-4. 관계대수
관계대수는 SQL 뒤에서 DBMS가 하는 일을 기호로 적은 것이다. σ(Select)는 WHERE처럼 행을 고르고, π(Project)는 SELECT 뒤 열 목록처럼 열을 고르며, ⋈(Join)은 5-4의 JOIN이다. 예를 들어…
6-5. 트랜잭션·병행제어·회복
트랜잭션(5장 상자)은 "전부 아니면 전무"로 처리되는 작업 묶음이고, 이를 지키는 네 성질이 ACID다. 여러 트랜잭션이 같은 데이터를 동시에 고치면 한쪽의 갱신이 사라지는 등의 문제가 생기므로 실행 순서를 조절하는 병행제어가…