어떻게 옮길 수 있을까?
아래와 같은 목적을 달성해야함.
모든 정보를 유지
최대한 Constraints를 유지 (모든 제약 조건을 포함하지는 못 함)
NULL 값들을 최소화 (Logical -> Physical Schema Mapping에 도움이 됨)
Mapping of Regular Entity Types
Mapping of Weak Entity Types
Mapping of Binary 1:1 Relation Types
Mapping of Binary 1:N Relation Types
Mapping of Binary M:N Raltion Types
Mapping of Multivalued Attributes
Mapping of N-ary Relationship Types
Strong Entity들로 새로운 Reation R을 생성하고 포함된 Simple Attributes를 포함시킨다.
Key 중에 하나를 Primary Key로 지정, 나머지는 Superkey 등록
Key가 Composite하면 선택한 Key의 Simple Attributes의 Set이 R의 Primary Key를 구성
Weak Entity Type에 대해 새로운 Relation을 생성하고 모든 Simple Attributes를 포함시킨다.
또한, Owner entity type의 PK를 FK로 포함시킨다.
Owner의 PK와 weak Entity Type의 Partial Key의 조합이 FK가 된다.
https://velog.io/@bsu1209/DB-Relational-Database-Design-by-ER-to-Relational-Mapping
1:1 관계에 대해 해당 관계에 참가하는 Relation S & T를 구별한다.
3가지의 옵션이 가능하다.
1) Foreign key Approach
한 Relation S을 선택 (보통 Total participation으로 참여하는 Entity를 선택하는 것이 Good하다)
다른 Relation T의 PK를 S의 FK로 포함
2) Merged Relation
1:1 관계에 대한 Mapping을 Two Entity types와 Relationship sigle Relation으로 합침으로써 수행
Entities가 서로 Total Participation인 경우 적절하다.
3) Cross-reference or Relationship Relation
Relation S & T의 PK 들을 Cross-referencing하기 위해 새로운 relation U를 생성
U의 PK는 S & T로부터의 FK 중에 하나
또 다른 FK는 U의 unique key
추가적인 Join이 필요 -> 추가 정보를 얻기 위해 수행
https://velog.io/@bsu1209/DB-Relational-Database-Design-by-ER-to-Relational-Mapping
각 1:N 관계에 대해 N-side에 있는 Relation S를 선택한다.
Relation T의 primary key를 S의 FK로서 포함
1:N 관계의 Simple attributes를 S의 attribute로 포함
M:N 관계에 대해 새로운 Relation U를 생성
Relationship에 참여하는 Entity types의 PK를 U의 FK attributes로 포함하고, 포함한 FK의 합이 U의 PK를 구성한다.
M:N 관계의 Simple attributes를 U의 attributes로 포함
Mutivalued attribute에 대해, 이를 위한 새로운 Relation U를 생성
U는
Mutivalued에 해당하는 attribute를 A라고한다.
A를 attribute로서 가지는 entity type의 PK를 FK로
{A,K}를 PK로 가진다.
각 n-ary relationship type R에 대해 이를 표현할 새로운 Relationship relation U를 생성
참여하는 Entity types를 표현하는 Relations의 Primary keys를 U의 Foreign Key attributes로 가진다.
M:N 관계 types를 Mapping하는 과정과 유사.
ER to Relational Mapping 방법 참고 링크