study ../SQLD

[과목 I. 데이터 모델링의 이해] 제2장 데이터 모델과 SQL: index

wlsekf 2025. 8. 13. 22:49
과목 I. 데이터 모델링의 이해
  제2장 데이터 모델과 SQL
    제1절 정규화
    제2절 관계와 조인의 이해
    제3절 모델이 표현하는 트랜잭션의 이해
    제4절 Null 속성의 이해
    제5절 본질식별자 vs. 인조식별


# 정규형
  * 제1정규형: 모든 속성은 반드시 하나의 값을 가져야 한다.
  * 제2정규형: 엔터티의 일반 속성은 주식별자 전체에 종속이어야 한다.
  * 제3정규형: 엔터티의 일반 속성 간에는 서로 종속적이지 않다.

# 1차 정규화
  * 중복 속성에 대한 분리가 1차 정규화의 대상이 되며, 로우 단위의 중복도 1차 정규화의 대상이 되지만 칼럼 단위로 중복이 되는 경우도 1차 정규화의 대상이다.

# 널(NULL)의 특성
  * 널 값은 아직 정의되지 않은 값으로 0 또는 공백과 다르다. 0은 숫자이고, 공백은 하나의 문자이다.
  * 테이블을 생성할 때 NOT NULL 또는 PRIMARY KEY로 정의되지 않은 모든 데이터 유형은 널 값을 포함할 수 있다.
  * 널 값을 포함하는 연산의 경우 결괏값도 널 값이다. 모르는 데이터에 숫자를 더하거나 빼도 결과는 마찬가지로 모르는 데이터인 것과 같다.
  * 결괏값은 NULL이 아닌 다른 값을 얻고자 할 때 NVL/ISNULL 함수를 사용한다. 널 값의 대상이 숫자 유형 데이터인 경우는 주로 0(Zero)으로, 문자 유형 데이터인 경우는 공백보다는 'x' 같이 해당 시스템에서 의미 없는 문자로 바꾸는 경우가 많다.