2016-12-20 23 views
0

1-1 관계와 3NF간에 충돌이 있습니까? 이제데이터베이스 정규화 : 1-1 관계 및 3NF

CustomerID (Primary Key) 
CustomerFirstname 
CustomerLastname 
CustomerLoginID 
CustomerLoginPW 

을의 각 CustomerID는 하나의 CustomerLoginID 그 반대에 해당한다고 가정하자 :

고객 테이블 :

예를 들어, 다음 테이블을. 이것은 1-1 관계입니다.

일반적으로 1-1 관계는 이미 정규화되어 있으며 정규화 할 필요가 없다고 명시되어 있습니다.

그러나, CustomerLoginPWCustomerID에 의해 결정될 수 있지만, CustomerLoginID에 의해 결정될 수도있다. 이것은 3NF를 전가합니다. 즉, 전이 의존성입니다.

따라서 위의 표는 두 테이블로 분리해야하며 CustomerLoginIDCustomerLoginPW은 관계가 1-1인지 여부에 관계없이 별도의 테이블에 넣어야합니다. 많은 사람들이 1-1 관계를 제안하는 것처럼 하나의 테이블에 남겨두면 3NF가 깨지는 것 같습니다.

+0

"전 이적 종속성"의 * 정의 *를 읽으십시오. – philipxy

답변

0

비 - 소수 속성 (후보 키의 일부가 아닌 속성)이 후보 키에 따라 다르면 3NF에있는 관계입니다 (3NF의 정의가 중요한 것은 후보 키가 아니라 기본 키입니다 키). CustomerIDCustomerLoginID은 모두 후보 키이므로 서로 서로 및 다른 모든 특성을 결정하므로 3NF를 위반하는 종속성이 없습니다.

관계가 정규화되어 있기 때문에 테이블을 분할 할 필요가 없습니다.