2024. 6. 6. 16:03ㆍCS
지난 글에 이어서 이번 글에서는 er다이어그램 중 Crow's Foot 표기법에 대해 알아볼 것이다.
er 다이어그램에 대한 개념과 Chen 표기법은 전 글에서 확인하자
ER 다이어그램 (Chen 표기법)
ER 다이어그램(Entity Relationship Diagram)은 데이터 모델링중 한 단계인개념적 설계에 속해 있으며 데이터베이스를 시각화하는 도구다. ER 다이어그램을 설명하기전에 간단하게 데이터 모델링의 단
mhje11.tistory.com
그 전에 지난번 글에서 개체와 속성에 대한 정의를 다루지 않아서 여기서 설명하고 지나가도록 해보자
- 개체 : 현실 세계에서 독립적으로 식별할 수 있는 사물, 사건 또는 개념
ex) 게시글
- 속성 : 개체의 특성이나 성질
ex) 게시글의ID, 비밀번호, 글의제목, 작성자, 내용
쉽게 풀어쓰자면 개체는 테이블의 이름이고 속성은 테이블의 컬럼이다.
개체에는 강한 개체와 약한개체 두 종류가 있는데 두 개체의 정의는 아래와 같다.
- 강한 개체 : 독릭접으로 존재할 수 있는 개체
- 약한 개체 : 독립적으로 존재할 수 없으며 강한 개체에 의존하는 개체
이제 개체와 속성에 대해 설명이 됐을거 같으니 Crow's Foot표기법에 대해 알아보자
기존의 Chen표기법과 비교해 보자면 이런식으로 직사각형 안에 기본키(식별자) 속성들로 표시한다.
또한 기존의 Chen표기법은 선으로 관계를 표기하고 1 : N 이면 해당 선위에 대응수를 기술했는데
Crow's Foot표기법은 관계에 따라 여러 모양의 선이 존재한다.
Zero or one 이나 Zero or many의 관계가 무슨 말인지 이해가 안갈 수 도 있는데 단순하게 전글에서 사용한 게시글, 댓글 관계 를 생각해보면 게시글에는 댓글이 단 하나도 없을 수 도 있다 즉 최소로 가지는 갯수가 0이라는 의미이다.
예시로 만들어 보기전에 식별자 관계와 비식별자 관계에 대해 알아보자
우선 식별자 관계는 실선으로 , 비식별자 점선으로 표시한다.
- 식별자 관계
식별자 관계는 강한 종속성을 갖는것이 특징이다. 이게 무슨 소리냐면
댓글은 게시글 없이 생성이 불가능하다. 즉 댓글은 게시글에 강하게 종속 됐다는 뜻이고 부모 개체가 있어야
자식 개체가 존재할 수 있다는 뜻이다. 또한 종속되는 약한개체의 기본키가 강한 개체의 기본키인것이 특징이다.
- 비식별자 관계
비식별자 관계는 약한 종속성을 갖는것이 특징이다.
도서관과 책을 예시로 들자면 책은 도서관 없이 존재할 수 도 있고 도서관에 속한 상태로 존재할 수 도 있다.
이렇게 부모 개체가 필수가 아닌 경우를 말한다. 또한 강한개체의 기본키를 외래키로 갖는것이 특징이다.
이제 필요한 부분은 다 설명했으니 Chen 표기법을 Crow's Foot 표기법으로 바꿔보자
표기법을 바꾸면서 왜 갑자기 기본키가 두개로 즉 복합키가 됐냐가 의문일텐데 Comments 테이블은 Boards테이블 없이 존재할 수 없기때문에 강한 식별자 관계로 나타내기 위해서 Boards테이블의 기본키를 기본키로 가져야 할것이다 근데 1 : N 의 관계인데 Boards테이블의 id만을 기본키로 사용할시 기본키의 유일성을 만족하지 못하기 때문에 Comments의 id를 복합키로 섞어서 사용해주는 것이다. 그리고 관계를 나타내는 선으로 one, zero or many를 잘지켜서 Boards 테이블 하나에 최소 0개의 Comments 를 갖도록 관계를 나타냈다.
- 참고자료
DB_RDBMS - 6. 식별관계와 비식별관계, 논리적 설계.
개념적 설계에서 논리적 설계로 넘어가기 위해 기본키(Primary Key)와 외래키(Foreign Key)를 이해하고, 이를 식별관계, 비식별 관계로 연결지어 보자. 1. 식별자 분류 1) 식별자 분류 식별자의 종류는
velog.io
ERD (Entity-Relation Diagram) 표기법
1. 데이터베이스 설계 단계 데이터베이스 설계는 개념적 모델링 → 논리적 모델링 → 물리적 모델링 세 단계로 진행된다. 개념적 모델링은 Entity 를 도출하고 ERD를 작성하는 단계이다. 논리적 모
hudi.blog
[데이터모델링] ER모델 개념, IE표기법
출처 : 쉽게 배우는 오라클로 배우는 데이터 베이스 개론과 실습 ER 모델 (Entity Relationship) 세상의 사물을 개체(Entity)간의 관계(Relationship)로 표현한다. ER 다이어그램 ER모델을 표준화 된 그림으로
jie0025.tistory.com
[DB] ER 모델과 ER표기법(IE 표기법)
ER 모델 표기법이란? ER 모델 표기법을 이해하기 위해서는 먼저 'ER 모델'을 알아야 한다. Entity Relationship 모델은 1976년 피터 첸이 제안한 개념적 모델링을 위한 방법론이다. 세상의 사물을 개체entit
lifreeblog.tistory.com
'CS' 카테고리의 다른 글
ER 다이어그램 (Chen 표기법) (0) | 2024.06.01 |
---|---|
SOLID 설계 원칙 (0) | 2024.05.31 |