문제
제1정규형을 만족시키기 위한 조치로 가장 적절한 것은?
① 직원 속성에 두 개의 값이 들어 있으므로 직원1, 직원2 컬럼으로 나누어 저장한다. ② 하나의 속성에 여러 직원 값이 들어가지 않도록 직원 정보를 별도 행 또는 별도 테이블로 분리한다. ③ 모든 테이블의 기본키를 제거한다. ④ 계산 가능한 속성을 하나의 테이블에 모두 중복 저장한다.
정답
2번
해설
정답: 2. 제1정규형은 속성 값의 원자성을 요구하므로 하나의 컬럼에 여러 값을 넣지 않도록 분리해야 한다.
오답 풀이
- 1번: 직원1, 직원2처럼 반복 컬럼을 만드는 것은 정규화 관점에서 바람직하지 않다.
- 2번: 다중값 속성을 별도 행 또는 별도 테이블로 분리하여 원자성을 만족시키는 방법이다.
- 3번: 기본키 제거는 정규화와 무관하며 데이터 식별성을 해친다.
- 4번: 계산 속성 중복 저장은 정규화가 아니라 반정규화에 가깝다.
보충 개념 제1정규형은 컬럼 하나에 하나의 값만 저장되도록 하는 단계이다. 반복 속성이나 다중값 속성은 별도 엔터티나 행으로 분리한다.