지난 포스트에서 다뤘던 ERD 표기 방식은 가장 대표적이고 기본적인 ER 모델의 표현 방식이었습니다.
이번 포스트에서는 또 다른 대표적인 ER 모델 표기법인 Crow-feet 표기(새발 표기법, IE 표기법)
에 대해서 알아보도록 하겠습니다.
Crow-feet 표기법(이하 새발 표기법)
은 개체(Entity)를 직사각형으로만 표현합니다.기존 ER 다이어그램은 위와같이 직사각형에 개체명, 타원에 속성을 쓰고 이를 실선으로 이러서 개체를 표기했었는데요. 새발 표기법은 다음과 같이 직사각형에 개체명과 속성을 적습니다.
새발 표기법에서 관계는 개체를 실선으로 연결하는데, 이때 몇가지 기호들을 사용해서 개체가 어떤 관계이고 관계 대응수는 어떻게 되는지를 표현합니다. 이렇게 기호들을 사용해서 표현된 관계 실선이 마치 새발처럼 보인다고 해서 Crow-feet
이라는 별칭이 붙게 된 것 입니다.
새발 표기법에서 관계는 다음과 같이 표기합니다.
강한 개체 타입
강한 개체 타입
(독립적으로 식별가능한 개체)은 관계 실선을 점선으로 잇습니다.
약한 개체 타입
약한 개체 타입
(부모 개체 속성을 식별자로 쓰는, 독립적일 수 없는 개체)는 관계 실선을 실선으로 잇습니다.
관계 대응수는 관계 실선의 양 끝, 개체 쪽에 |, O, <
기호를 그려넣어서 표시하게 됩니다.
1 (필수)
|
은 해당 개체가 반드시 하나 존재함을 의미합니다.
O (선택)
O
는 해당 개체가 참여하지 않을 수도 있음을 의미합니다.
< (다수 N)
<
은 해당 개체가 0개 이상 참여함을 의미합니다. (Many)
위 세 가지 기호들은 한 가지만 사용되는게 아니라 다양하게 조합되어서 사용됩니다.
기호 조합에 따라 어떻게 해석해야하는지 몇 가지 예제를 통해 알아보겠습니다.
A는 1개 필수 참여
|
로 고정했으니 개체 B의 관계에 주목해주세요.
1:1 관계
. A와 B가 하나씩 필수 참여.선택적 1:1관계
. A는 하나가 필수 참여지만, B는 참여하지 않을 수도 있고 참여하더라도 최대 1개의 개체만 참여.1:N 관계
. A는 하나의 필수 참여, B는 N개의 개체가 참여. 까마귀발 <
가 단독으로 사용되는 경우에는 0..N
을 의미하므로 최소 참여수는 0부터 최대 N까지 참여합니다.1:N 관계
. A는 하나의 필수 참여, B는 최소 1개의 개체가 참여하고 N개 까지 참여.1:N 관계
. A는 하나의 필수 참여, B는 최소 0개부터 N개까지 참여합니다.단독으로 까마귀 발만 사용했을 경우의 예제랑 똑같이 B가 N을 나타내는데요.
O
를 붙이는 경우는 최솟값이 0임을 명시적으로 표현하는 표기법이 됩니다.
즉, 단독 까마귀발<
은N
을 표현하고,O<
는[0, N]
과 같이 최대 최소를 명시하는 표현법이라고 보시면 됩니다.
1:1 관계
. A와 B가 하나씩만 필수 참여. 마찬가지로 B의 최소 최대를 [1, 1]로 명시합니다.이 표기법들을 정리하면 다음 그림 한 장으로 표현할 수 있습니다.