비디오 대여점을 위한 데이터베이스를 구성하여 '고객'별로 '대여일'과 … | [컴퓨터활용능력 1급 필기] 11년 3회차 기출문제 상세 페이지
1[컴퓨터활용능력 1급 필기] 11년 3회차
비디오 대여점을 위한 데이터베이스를 구성하여 '고객'별로 '대여일'과 '반납일'을 관리하려고 한다. 고객들은 여러 비디오를 대여하며, 한 비디오는 여러 고객들에게 대여된다. 다음의 테이블 설계 중에서 가장 옳은 것은? (단, 밑줄은 기본키를 의미함)
1
고객(고객번호, 이름, 연락처)
비디오(비디오코드, 영화제목, 출시일)
대여(고객번호, 비디오코드, 대여일, 반납일, 대여금액)
2
대여(고객번호, 이름, 연락처, 대여일, 반납일, 대여금액)
비디오(비디오코드, 영화제목, 출시일)
3
고객(고객번호, 이름, 연락처, 대여비디오코드)
비디오(비디오코드, 영화제목, 출시일)
대여(고객번호, 대여일, 반납일, 대여금액)
4
대여(고객번호, 이름, 연락처, 대여일, 반납일, 대여금액)
비디오(비디오코드, 고객번호, 영화제목, 출시일)
해설
고객과 비디오는 서로 다대다 관계이므로, 고객과 비디오를 각각 독립된 테이블로 두고 두 기본키를 함께 포함하는 별도의 연결 테이블(대여)에 대여일·반납일·대여금액과 같은 관계 종속 속성을 저장하는 설계가 정규화 원칙에 맞다.
다른 설계들은 고객 정보를 대여 테이블에 중복 저장하거나 비디오 테이블에 고객번호를 넣는 등 다대다 관계를 잘못 표현하고 있어 데이터 중복과 갱신 이상이 발생한다.
내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.