2017-09-19 2 views
1

이름, 사회 보장 번호, 주소, 도시, 주, 우편 번호, 지역 번호 및 전화 번호를 포함하여 미국인과 관계를 맺으려면 기능 의존성이 무엇인지 관계가 성립 되길 기대 하느냐?기능 의존성 구축

Social security number -> name 
Phone number -> Social security number 
Street adress, city -> State, ZIP, area code 
Area code -> city 

이 정확 :

내 시도는이 무엇입니까?

+0

당신의 정당성은 무엇입니까? FD의 정의는 무엇입니까? 실제로 지역 코드는 도시 라인, 도시 코드, 지역 코드 라인, [SSN은 식별자가 아닙니다] (https://stackoverflow.com/a/45437673/3404097) 등을 교차합니다. – philipxy

답변

3

이와 같은 질문에 대한 객관적 인 맞고 틀린 대답은 없습니다. 우리가해야 할 일은 속성 이름입니다.

데이터베이스 설계의 포인트는 정확하게 담론의 일부 도메인의 의도 해석을 나타내는 것입니다. 적절하게 설계된 데이터베이스 스키마는 사용될 컨텍스트에서 목적에 부합하는 술어 세트입니다. 실질적인 데이터베이스 디자인에서 기능 종속성은 비즈니스 규칙이며 비즈니스 모델의 요구 사항과 일치하기 때문에 데이터 모델에서 적용하도록 선택합니다.

예를 들어 많은 문맥에서 FD {Phone number}→{X}은 매우 현실적이거나 유용한 규칙이 아니며 대부분의 데이터 모델의 일부가 아닙니다. 그러나 전화 회사의 경우 전화 번호가 매우 중요하므로 {Phone number}→{X}은 전화 회사의 일부 데이터 모델의 일부가 될 가능성이 큽니다. 여기서 X는 가입자 계정 번호입니다. 데이터베이스 디자인에서 종종 그렇듯이 대답은 다음과 같습니다.

숙제라고 가정하면 속성 이름 만 있으면 문제를 해결할 수 있다는 것입니다. SSN을 가진 모든 사람이 항상 고유 한 전화 번호를 가질 것이라고 생각하기 때문에 전화 번호를 SSN의 결정자로 사용 했습니까? 왜? 도시 속성의 가치가 무엇을 기대하며 왜 그들이 주를 결정 짓는 요인이 될 것이라고 기대합니까?