ERD(Entity Relationship Diagram)
ERD는 단어에서 의미하는 그대로 Entity 개체
와 Relationship 관계
를 중점적으로 표시하는 데이터베이스 구조를 한 눈에 알아보기 위해 그려놓는 다이어그램이다. 개체 관계도
라고도 불리며 요구분석사항에서 얻은 엔티티와 속성들의 관계를 그림으로 표현한 것이다.
엔티티(Entity)
- 엔티티는 정의 가능한 사물 또는 개념을 의미한다.
- 사람도 될수 있으며 프로필이나 도서정보와 같은 무형의 정보도 데이터화가 가능하다.
- 데이터베이스의 테이블이 엔티티로 표현된다고 보면 된다.
- 예를들어 학생 Entity는 아래의 그림과 같이 표현된다.
엔티티 속성(Attribute)
- 엔티티에는 개체가 갖고있는 속성(Attribute)을 포함한다.
- 예를들어 학생 엔티티라면, 학번, 이름, 주소, 전공 등 속성들이 있다.
- 데이터베이스의 테이블의 각 필드(컬럼)들이 엔티티 속성이라고 보면 된다.
엔티티 도메인(Domain)
- 도메인은 속성의 값, 타입, 제약사항 등에 대한 값의 범위를 표현하는 것이다.
- 사용자 기호에 따라 속성 타입만 그릴수도 있고, 가독성을 위해서 생략할 수도 있다.
- 이때 데이터 타입을 명시할 때, 데이터베이스가 지원하는 타입에 맞게 해야한다.
엔티티 분류
구분 | 내용 |
---|---|
유형 엔티티 | 물리적인 형태(예 : 고객, 상품, 학생, 교수 등) |
무형 엔티티 | 물리적인 형태가 없고 개념적으로만 존재하는 엔티티(예 : 인터넷 장바구니, 부서 조직 등) |
이력 엔티티 | 업무상 반복적으로 이루어지는 행위나 사건의 내용을 일자별, 시간별로 저장하기 위한 엔티티(예 : 입고 이력, 출고 이력, 구매 이력 등) |
코드 엔티티 | 무형 엔티티의 일종으로 각종 코드를 관리하기 위한 엔티티(예 : 국가코드, 분류 코드) |