DB04
Database Design Phases
- 초기 단계 : db 사용자들의 관점에서 필요한 데이터들을 분류한다.
- 두번째 단계 : 데이터 모델 선택
- 마지막 단계 : 추상 데이터 모델에서 데이터 베이스를 구현하는 단계이다.
ER Model
- 데이터베이스의 논리적 구조를 전체적으로 대변하는 스키마를 디자인한 것이 er model이다.
- ER data model은 3가지 기본 개념을 가진다.(엔티티 셋, 관계 셋, 속성)
- ER 데이터 모델의 전체적인 구조를 시각적으로 표현한 것이 ER diagram이다.
Entity Set
- entity는 구별할 수 있는 사물이다.
- entity set은 같은 속성을 공유하는 entity들의 집합이다.
- 속성들의 하위 집합은 entity set의 기본키를 구성한다.
Relationship Set
- 관계란 여러 엔티티들간의 관계이다.
- relationship set이란 2개 이상의 엔티티들로부터의 수학적인 관계이다.
- ER diagram에서 다이아몬드 모양이 relationship set을 대표한다.
Roles
- Entity set들 간의 관계는 구별될 필요가 있다.
- 선 위에 role을 적어줌으로써 해당 관계를 구분한다.
속성 종류
- 간단한 속성과 복잡한 속성이 있다.
- single-valued, multi-valued
- 유도 특성
Composite attribute
- Composite Attributes는 한 속성을 여러개의 파트로 나눠준다.
Cardinality 제약조건 매핑
- relationship set을 이용하여 서로 다른 엔티티가 연관되는 엔티티들의 개수를 표시
- 이진 관계 집합을 기술할 때 유용하다.
- 제약조건은 다음 4개 중 하나이다.
- one to one
- one to many
- many to one
- many to many
ER diagram에서 Cardinality 제약조건 표현하기
- → : “한 개”를 나타낸다.
-
: “여러개”를 나타낸다.
one-to-one relationship

one-to-many relationship

many-to-one relationship

many-to-many relationship

Total and Partial Participation
- Total Participation : entity set에 있는 모든 엔티티들이 관계 집합 중 적어도 하나의 관계에 참여하는 성질
- Partial Participation : 일부 entity들은 relationship에 참여하지 않을 수도 있는 성질
더 복잡한 제약조건을 표현하는 표기법
- i가 최솟값이고 h가 최댓값이라고 할 때 선위에 i..h라고 표현하여 최소와 최대 cardinality를 표현할 수 있다.
Primary Key
- Primary Key는 entity와 relation을 구분 짓는 값이다.
정규화
- 특정 relation R이 좋은 형태인지 결정한다.