개체 관계 모델이란?
- 피터 첸이 1976년에 제안한 모델링 방법론이다.
- 현실세계의 요소를 추출해서 개체(entity)와 관계(relationship)를 나타낸다.
개체 관계 모델의 3가지 요소
- 개체
- 관계
- 속성
개체
- 데이터 베이스에 저장할 만한 가치가 있는 데이터
- 정보의 세계에서 의미있는 하나의 정보 단위 (출처: 위키백과)
- 사람이나 사물뿐만 아니라 개념이나 사건도 개체가 될 수 있다.
- 개체의 이름은 중복이 되지 말아야 하며 하나 이상의 속성을 가지고 있어야 한다.
- 개체 타입을 가지고 있다.(개체 타입 = 개체이름 + 속성)
- 명사로 작성한다
※ 개체가 실체화되면 이것을 개체 인스턴스라고 부른다. (테이블에서 하나의 레코드에 해당된다.)
속성
- 개체가 가지고 있는 특성이다 (비유하자면 class가 개체이고, 멤버변수가 속성이다.)
- 더 이상 분해할 수 없는 논리적 데이터 단위이다.
- 한 번에 하나의 값만이 들어가야 한다.
- 실제 업무에서 사용하는 용어로 정의한다.
- 단순속성은 더 이상 분해할 수 없는 속성이며 복합속성은 여러 개의 의미로 분해할 수 있는 속성이다. (ex. 생년월일은 연도, 월, 일로 분해가 가능하다.)
- 유도속성은 저장속성에서부터 파생되어져 나온 것이다. (ex. 보너스 = 연봉의 30퍼센트라고 한다면 보너스가 유도속성이 되며 연봉이 저장속성이 된다.)
관계
- 개체와 개체간의 관계를 의미한다
- 보통 동사로 작성한다.
- 1대 n 관계, 1대 1 관계, n:m관계가 있다. (이러한 관계를 정의한 것을 카디널리티라고 한다.)
- 카디널리티는 개체 인스턴스와 개체인스턴스가 맺고 있는 관계를 의미한다.
E-R 모델
★1대1, 다대다 관계도 같은 방식으로 숫자만 바꿔서 표현하면 된다.
★ 다른 개체 없이도 존재가능한 개체를 강한 개체라고 하며, 다른 개체 없이는 존재가 불가능한 개체는 약한 개체라고 한다.
Reference