반응형
DBA는 아니지만, 프로그램을 잘 만들기 위해서 완성된 ERD를 이해하고, 나아가 간단한 모델링은 직접 만들줄 알야한다고 생각한다.
ERD를 이해하기 위한 첫 걸음이자 가장 중요하다 할 수있는 부분이 관계선과 관계선에 사용되는 기호라고 할 수 있다.
들어가기 앞서 관계선과 기호의 종류에대해 알아보자
관계선의 종류
- 실선(Identifying): 식별관계
- 부모테이블의 PK가 자식테이블의 FK/PK가 되는 경우
- 부모가 있어야 자식이 생기는 경우
- 점선(Non-Identifying): 비식별관계
- 부모테이블의 PK가 자식테이블의 일반속성이 되는 경우
- 부모가 없어도 자식이 생기는 경우
기호의 종류(도형 혹은 식별자)
- |: 1개 / 실선은(dash) ‘1'을 나타낸다.
- ∈: 여러개 / 까마귀 발(crow’s foot or Many)은 ‘다수' 혹은 '그 이상'을 나타낸다.
- ○: 0개 / 고리(ring or Optional)은 ‘0'을 나타낸다.
위와 같은 기호들을 서로 조합하여 사용될 수 있으며, 다음과 같은 조합이 가능하다.
- Type1(실선과 실선): 정확히 1 (하나의 A는 하나의 B로 이어져 있다.)
- Type2(까마귀발): 여러개 (하나의 A는 여러개의 B로 구성되어 있다.)
- Type3(실선과 까마귀발): 1개 이상 (하나의 A는 하나 이상의 B로 구성되어 있다.)
- Type4(고리와 실선): 0 혹은 1 (하나의 A는 하나 이하의 B로 구성되어 있다.)
- Type5(고리와 까마귀발): 0개 이상 (하나의 A는 0또는 하나 이상의 B로 구성되 있다.)
기호의 조합은 보통 그림 예제의 Type1, Type3, Type4, Type5를 자주사용하며, 사용하는 ERD 프로그램에 따라 조합 방식이 다를 수 있다.
(상품 테이블과 상품의 옵션 테이블의 관계를 정의할때, 상품의 옵션은 없을 수 도 있고, 여러개가 있을 수 있기 때문에. 그림 예제 Type5로 표현이 가능하다.)
추가의견 및 잘못된 내용이 있을경우 댓글 바랍니다 :)
반응형
'Database' 카테고리의 다른 글
MySQL 패스워드 분실시 대안 방법. (0) | 2013.02.26 |
---|---|
Informix Data Type (0) | 2010.09.14 |
무료 MSSQL툴 - Microsoft SQL Server Management Studio Express (0) | 2010.07.15 |