2013-06-01 2 views
1

계정에 전화 번호가 많을 수 있지만 전화 번호는 하나의 계정에만 할당 될 수 있습니다. 일반적으로 일대 다 관계로 간주되지만 응용 프로그램의 전화 번호는 일정 기간 동안 할당되지 않은 채로 남아있을 수 있습니다. 즉, 계정 외래 키가 다른 계정에 할당 될 때까지 부재 중일 수 있습니다.외래 키를 null로 설정할 수 있습니까?

일정 기간 전화 번호가 계정에 할당되지 않았기 때문에 관계가 조인 테이블을 통해 관리되어야한다고 생각합니다.

조인 테이블이 올바른 옵션입니까 아니면 외래 키가 비어 있어도 괜찮습니까?

편집 : 본질적으로 전화 번호 테이블과 계정 테이블이 있습니다. 계정에는 많은 전화 번호가있을 수 있지만 전화 번호는 특정 시간에 하나의 계정에만 할당 될 수 있습니다. 전화 번호가 계정에 할당되지 않을 때가있을 것입니다.

+0

전화 번호가 정의 된 목록/은행이 하나의 계정에만 할당 될 수 있거나 전화가 통신 회사가 제공 한 유효한 번호가 될 수있는 경우 귀하의 질문에서 명확하지 않습니다. 좋은 대답을 제공하는 데 도움이된다면 분명히 할 수 있습니다. – armitage

+0

@armitage 단일 계정에만 할당 할 수있는 전화 번호 목록/은행이 있습니다. 미안해, 내가 그걸 분명히하지 않았어! – Dre

답변

4

관계가 다 대다 인 경우가 아니면 사용자/전화 용으로 다른 간접 테이블을 가질 필요가 없습니다. 전화 테이블의 사용자 키가 null 일 때 사용자가이를 소비하지 않고 숫자 자체를 고유하게 두는 것이 좋습니다.

+0

이것은 내 첫 번째 생각 이었지만,'null '외래 키를 갖는 것이 나쁜 습관으로 간주되었는지는 몰랐다. 도와 주셔서 감사합니다! – Dre

관련 문제