관계형 데이터 베이스 설계
데이터 베이스 설계시 고려사항
개념적 설계시 고려사항
- 실세계에 대한 정의가 정확히 이루어져야 한다.
- 실세계를 구성하는 구성요소들은 개체 집합 차원에서 식별되어야 하며 개체 집합 차원에서 식별된 구성요소들은 데이터 베이스로에 필요한 만큼 개념적 설계에 반영하도록 한다.
- 실세계를 구성하는 개체 집합의 속성은 충분히 식별되어야 하며 식별된 속성들은 필요한 데이터베이스에 필요한 만큼 반영한다.
- 실세계 개체집합들 사이에 존재하는 관계성 집합이 정확히 식별되어야 하며 식별된 관계성 집합들은 데이터 베이스에 필요한 만큼 개념적 설계에 반영한다.
- 관계성 집합의 속성들을 식별하여 데이터베이스에 필요한 만큼 개념적 설계에 반영한다.
- 실세계에 존재하는 제약 사항들이 충분히 식별되어 설계에 반영되어야 한다.
논리적 설계시 고려사항
- 논리적설계는 개념적 설계 결과를 정확히 반영해야 한다.
- 데이터 이상을 최소화하도록 설계되어야 한다.
ER모델을 릴레이션 스키마로 표현하기
개체 집합 변환
규칙 1
강성 객체집합은 하나의 독립된 릴레이션 스키마로 대응시키고, 속성은 릴레이션 스키마의 속성이 되도록 한다.
규칙 2
약성 객체 집합을 릴레이션 스키마로 변환할 때 강성 객체 집합의 주키를 외래키로 하고 연결된 속성들을 스키마의 속성이 되도록 한다. 주키는 이 외래키를 포함한다.
관계성 집합의 변환
규칙 3, 1 대 1 일때
연관된 두 스키마중 하나를 변환하는데 한쪽의 주키를 다른쪽의 외래키로 포함 시킴과 동시에 R의 속성집합을 포함시킨다.
규칙 4, 1 대 n 일때
1쪽의 주키를 n쪽의 외래키로 포함 시킴과 동시에 R의 속성집합도 포함시킴으로서 n쪽의 스키마를 변환 시킨다.
규칙 5, n 대 m 일때
양쪽의 주키와 R의 속성들을 뽑아와서 새로운 R스키마를 생성한다. R의 주키는 양쪽에서 뽑아온 외래키들의 집합이다.
규칙 6, 3자 관계
무조건 새로운 스키마 R을 만드는데 각 객체집합의 주키를 외래키로 뽑아서 R의 주키로 삼는다.