5. 데이터 입출력 구현
1. 논리 데이터저장소 확인하기
284p ✍️ 정규화(Normalization)
: 중복성을 최소화하고 정보의 일관성을 보장하기 위한 개념
제1정규화 | 1) 반복되는 속성이나 Group 속성 제거 2) 새로운 실체와 1:N의 관계 추가 모든 속성은 반드시 하나의 값을 가져야 함(반복형태가 있어서는 안됨) |
---|---|
제2정규화 | 1) 주식별자에 완전하게 종속되지 않는 속성 제거 2) 불완전 함수적 종속(Non Fully Dependency) 제거 3) 모든 속성은 반드시 UID전부에 종속되어야 함(UID일부에만 종속되어서는 안됨) |
제3정규화 | 1) 비식별자에 종속되는 속성 제거 2) 주식별자에 이행종속(Transitive Dependency) 되는 속성 제거 3) UID가 아닌 모든 속성 간에는 서로 종속될 수 없음(속성간 종속성 배제) |
제4정규화 | 1) 실제로 거의 고려되지 않는 정규화 2) 주식별자에 다가종속(Multi-Valued Dependency)되는 속성을 두가지 이상 두지 않음 |
2. 물리 데이터저장소 설계하기
288p ✍️ 반정규화(Denormalization)
: 정규화에 충실하여 모델링을 수행하면 종속성, 활용성은 향상되나 수행속도가 증가하는 경우가 발생하여 이를 극복하기 위해 성능에 중점을 두어 정규화하는 방법
특징?
(1) 데이터 모델링 규칙에 얽매이지 않고 수행한다.
(2) 시스템이 물리적으로 구현되었을 때 성능 향상을 목적으로 한다.
3. 데이터 조작 프로시저 작성하기
301p ✍️ SQL
데이터 정의어(DDL) | 데이터 조작어(DML) | 데이터 제어어(DCL) | 트랜잭션 제어어(TCL) |
---|---|---|---|
CREATE DROP RENAME ALTER TRUNCATE | INSERT UPDATE DELETE SELECT | ROLE - 롤(권한..?) GRANT - 권한 및 롤 부여 REVOKE - 권한 및 롤 회수 | COMMIT - 변경사항 최종반영 ROLLBACK - 이전 상태로 되돌림 SAVEPOINT - 특정 시점까지 Rollback할 수 있는 명령어 |
4. 데이터 조작 프로시저 최적화하기