
SQLD 학습을 진행하며 기억할 내용을 간략히 기록합니다.
용어로 Entity(엔티티)를 엔터티라고 발음하지만 엔티티로 정리합니다.
정규화는 논리 데이터 모델 상세화 과정의 대표적인 활동이다.
논리 데이터 모델의 일관성을 확보하고 중복을 제거하여 속성들이 가장 적절한 엔티티에 배치되도록 함으로써 더 신뢰성 있는 데이터구조를 얻는데 목적 을 둔다.
제1정규형(1NF):
제2정규형(2NF):
제3정규형(3NF):
정규화 수행 시 조회 성능은 보장 받지 않는다.
성능이 느려졌다면 반 정규화를 고려해야 한다.
모든 반복 속성에 인덱스를 생성하면 검색 속도는 좋아질 수 있겠지만 너무 많은 인덱스 때문에 입력, 수정, 삭제의 성능이 저하된다.
정규화를 수행하면 일반적으로 검색 작업의 성능이 저하된다. (조인을 해야하므로)
NULL은 공백 문자 혹은 숫자 0과 동일하지 않는다.
모르는 값을 의미한다.
값의 부재를 의미한다.
NULL과의 모든 비교(IS NULL 제외)는 알 수 없음을 반환한다.
NULL 값과 어떤 숫자를 비교한 결과는 항상 알 수 없음(Unknown)이다.
"NULL = NULL" 연산의 결과는 FALSE 또는 Unknown이다.
집계 함수를 계산할 때 NULL의 값은 0이 아니라 계산에서 제외된다.
본질 식별자: 업무에 의해 만들어지는 식별자
인조 식별자: 인위적으로 만든 식별자
주식별자: 자식의 주식별자로 부모의 주식별자 상속
비식별자: 부모 속성으리 자식의 일반 속성으로 사용
함수적 종속성: 데이터들이 어떤 기준 값에 의해 종속되는 현상