엔티티 관계와 속성 추출 방법

새로운 속성으로 주 식별자 선정의 장 단점

대출일, 회원번호, 도서관리번호를 주식별자로 가져야 하는 경우, 너무 많은 속성이 주 식별자가 되어 구별하기 어려울 때, 대출 번호라는 새로운 주 식별자를 도입할 수 있다.

-> 하지만 새로운 주 식별자를 도입한경우, 다음과 같은 문제가 발생할 수 있다.

-> 대출번호가 키가 되는경우 대출일, 회원번호, 도서관리번호가 중복된 데이터가 있을 수 있다.

-> 새로운 개념의 속성을 만들어 주식별자로 지정할 경우 단점과 장점이 있으니 잘 사용해야 한다.



필요없는 속성을 주 식별자로 지정하는 경우.

필요없는 속성이 주 식별자가 되는 경우, 문제가 발생할 수 있다.

제품번호와 제품가격이 주 식별자가 되었을 때, 제품번호별로 제품가격은 하나여야 하는데 서로 다른 데이터가 존재할 수 있는 의미적 중복문제를 발생시킬 수 있다.

제품번호 가격

1111111 11

1111111 22


 

관계의 정의 방법

엔티티는 명사를 도출 하였다면 관계정의는 요청서에서 동사를 보고 판단하라.

부모 관계를 확인하라.

=> A 엔티티가 만들어지기 위해서 B엔티티가 필요하다면, B엔티티는 A엔티티의 부모의

관계를 가지고 있다.

=> 두 엔티티 중 정보를 먼저 생성하여 가지고 있는 쪽이 부모이고, 가져다 쓰는 쪽이

자식이다.



외래식별자 정의

=> 부모 엔티티의 속성이 자식 엔티티에도 공통적으로 존재한다면 자식 엔티티에 있는 공통

속성이 외래 식별자가 된다.


관계/외래식별자에 대한 규칙

=> 두 엔티티가 관련이 있다는 의미는 두 엔티티가 공유하는 속성이 있다는

의미.

=> 공통 속성의 값이 먼저 생성되는 쪽이 부모 엔티티고 , 가져다 쓰는 쪽이

자식 엔티티

=> 부모엔티티에 있는 공통 속성은 주 식별자가 되고, 자식 엔티티의 공통

속성은 외래 식별자가 된다.

=> 부모 엔티티와 자식 엔티티의 카디낼러티는 1:N

댓글()