식별자, 관계, 속성

Daniel·2022년 10월 6일
0

DB 설계

목록 보기
6/7
post-thumbnail

주식별자

주식별자의 정의

주식별자는 엔티티 내에서 인스턴스를 구별하는 기준 역할을 수행한다. (기본키)

고려사항

주식별자로 사용할 때는 다음과 같은 사항을 고려해 보아야 한다.

  • 미래에서도 중복이 되지 않는가

주식별자의 형태

주식별자는 3가지 형태를 가진다. 일반적인 주식별자, 복합 속성으로 이루어진 주식별자, 인위적 주식별자가 있다. 복합 속성으로 이루어진 주식별자는 엔티티의 속성들을 최소한으로 조합하여 주 식별자의 역할이 수행할 수 있도록 조합하여 사용하며 인위적 주식별자는 임의의 값으로 설정하여 주 식별자의 역할을 수행한다.

복합 속성으로 주식별자 사용하는 경우 많은 속성을 이용하는 경우 편의상 인위적 주식별자를 사용할 수 있으나 인위적 주식별자를 사용하는 경우 특정 상황에서 중복의 발생 가능성이 있다. 다만 데이터 중복을 관리할 수 있는 대안을 잘 마련하면 상관없다.

관계

관계의 정의 방법

  • 문서로부터 동사를 구분한다.
  • 관계 매트릭스를 그려본다.
  • 붐노자식 관계에 있는 엔티티들을 찾아본다.
  • 도나계가 정의되면 카디널리티와 관계의참여도를 표시한다.

외래식별자의 정의

관계가 있는 두 엔티티를 부모 자식으로 구분한다.
부모 엔티티의 주식별자에 해당하는 속성이 자식 엔티티에도 존재하는지 확인한다.

관계 외래식별자의 정의 사례

속성의 종류는 기본속성 설계속성 유도속성으로 나뉜다. 설계속성과 유도속성에 대해 알아보자

설계속성

설계속성은 엔티티의 정보를 효과적으로 관리하기 위해서 설계의 차원에서 새로 만든 속성을 의미한다. 즉 해당 엔티티에 본래 있던 속성은 아니지만, 효율적인 관리를 위해 새로 속성을 추가하는 것이다. 부서코드, 색상코드, 국가코드, 직위코드, 상태코드등이 있다.

유도속성

유도속성은 다른 속성들로부터 유도될 수 있는 속성들을 의미한다. 예를 들어 수량, 단가, 구매 금액의 관계를 생각해 볼 수 있다.

profile
폐쇄

0개의 댓글

관련 채용 정보