드로우홀릭 더베이직
안녕하세요 선생님,
회사에서 실적정리를 위해 액세스 2013을 무따기로 공부하고 있습니다.
시간이 없어서 동영상 강의를 아직 듣지는 못하고 있고(초급)
책과 실습을 병행하고 있는데요.
기본키, 필수속성, 고유속성 부분에서 질문이 있습니다.
하나의 테이블에는 기본 키를 여러개 지정할 수 없다고 하셨는데 (p.115)
이미 이 예제에서 기본키를 2개 지정하고 있으며, 2개 지우고 3개 지정했더니 3개도 지정 되던데요.
그리고 고유속성이 중복방지를 위해서라면 기본키를 써도 되는 것이 아닌가 합니다.
기본키가 여러개이면 안되는 이유와 기본키와 고유속성의 차이점에 대해서 구체적으로 알고 싶습니다.
네, 좋은 질문입니다.
하나의 테이블에는 기본키를 여러 개 지정할 수 없다는 말은..
예를 들어, 회원 테이블에 회원번호, 주민등록번호 필드가 있다면.. 회원번호나 주민등록번호 둘 중의 하나만 기본키 이어야 한다는 말입니다. 회원번호와 주민등록번호 모두 기본키로 설정할 수 없다는 뜻입니다.
지금 말씀해 주신.. '기본키를 2개 지정하고 있으며, 2개 지우고 3개 지정했더니 3개도 지정 되던데요.' 라는 말은.. 2개든 3개이든.. 모두 기본키를 하나로 보는 겁니다. 필드 두개로 구성된 기본키 1개.. 필드 세개로 구성된 기본키 1개.. 이렇게 봐야 하지요.
앞의 '회원' 예제에서..
기본키는 대명사입니다. 회원을 부르는 대명사이지요. 당연히 테이블에 하나의 기본키만 있어야 합니다. 회원 테이블에서는 '회원번호'가 적절하겠네요.
고유 속성은 하나의 테이블에 여러 개 있어도 됩니다. '주민등록번호' 필드는 기본키는 아니지만, 고유한 필드가 되어야 겠지요.
이제 차이가 이해되시나요?
기본키와 고유속성 모두.. 중복된 값을 허용하지 않습니다. 그러나 특정 레코드를 호칭할 때는 하나만 사용한다.. 이렇게 이해하면 되겠습니다.