본문 바로가기

데이터베이스 (한양대 백현미)

데이터베이스 강의 7

📌  관계 데이터 모델 : 실습

 

 

 

 

 

 


 

 

•  설계 3단계 : 논리적 설계

 

    • 목적

        • DBMS에 적합한 논리적 스키마 설계

        • 개념적 스키마를 논리적 데이터 모델을 이용해 논리적 구조로 표현 → 논리적 모델링(데이터 모델링)

          - 일반적으로 관계 데이터 모델을 많이 이용

 

    • 결과물

        • 논리적 스키마 : 릴레이션 스키마

 

    • 주요 작업

        • 개념적 설계 단계의 결과물인 E-R 다이어그램을 릴레이션 스키마로 변환

        • 릴레이션 스키마 변환 후 속성의 데이터 타입, 길이, 널 값 허용 여부, 기본 값, 제약조건 등을 세부적으로 결정하고 결과를 문서화시킴

 


 

    • E-R 다이어그램을 릴레이션 스키마로 변환하는 규칙

        • 규칙 1 : 모든 개체는 릴레이션으로 변환한다.

        • 규칙 2 : 다대다 관계는 릴레이션으로 변환한다.

        • 규칙 3 : 일대다 관계는 외래키로 표현한다.

        • 규칙 4 : 일대일 관계는 외래키로 표현한다.

        • 규칙 5 : 다중 값 속성은 릴레이션으로 변환한다.

 

 

• 논리적 설계 - (규칙 1) 모든 개체는 릴레이션으로 변환한다

        • E-R 다이어그램의 각 개체를 하나의 릴레이션으로 변환

               • 개체의 이름 → 릴레이션 이름

               • 개체의 속성 → 릴레이션의 속성

               • 개체의 키 속성 → 릴레이션의 기본키

               • 개체의 속성이 복합 속성인 경우에는 복합 속성을 구성하고 있는 단순 속성만 릴레이션의 속성으로 변환

 

• 논리적 설계 - (규칙 2) 다대다 관계는 릴레이션으로 변환한다

        • E-R 다이어그램의 다대다 관계를 하나의 릴레이션으로 변환

               • 관계의 이름 → 릴레이션 이름

               • 관계의 속성 → 릴레이션의 속성

               • 관계에 참여하는 개체를 규칙 1에 따라 릴레이션으로 변환한 후 이 릴레이션의 기본키를 관계 릴레이션에 포함시켜 외래키로 지정하고 외래키들을 조합하여 관계 릴레이션의 기본키로 지정

 

다대다 관계를 릴레이션으로 변환하는 규칙을 적용한 예

 

• 논리적 설계 - (규칙 3) 일대다 관계는 외래키로 표현한다

        • E-R 다이어그램의 일대다 관계는 외래키로만 표현

               • (규칙 3-1) 일반적인 일대다 관계는 외래키로 표현한다.

                       • 일대다 관계에서 1측 개체 릴레이션의 기본키를 n측 개체 릴레이션에 포함시켜 외래키로 지정

                       • 관계의 속성들도 n측 개체 릴레이션에 포함시킴

               • (규칙 3-2) 약한 개체가 참여하는 일대다 관계는 외래키를 포함해서 기본키로 지정한다.

                       • 일대다 관계에서 1측 개체 릴레이션의 기본키를 n측 개체 릴레이션에 포함시켜 외래키로 지정

                       • 관계의 속성들도 n측 개체 릴레이션에 포함시킴

                       • n측 개체 릴레이션은 외래키를 포함하여 기본키를 지정함

                         - 약한 개체는 오너 개체에 따라 존재 여부가 결정되므로 오너 개체의 기본키를 이용해 식별해야 함

 

• 논리적 설계 - (규칙 4) 일대일 관계는 외래키로 표현한다

        • E-R 다이어그램의 일대일 관계는 외래키로만 표현

               • (규칙 4-1) 일반적인 일대일 관계는 외래키를 서로 주고 받는다.

                       • 관계에 참여하는 개체 릴레이션들이 서로의 기본키를 주고 받아 외래키로 지정

                       • 관계의 속성들도 모든 개체 릴레이션에 포함시킴

                       • 불필요한 데이터 중복이 발생할 수 있음

               • (규칙 4-2) 일대일 관계에 필수적으로 참여하는 개체의 릴레이션만 외래키를 받는다.

                       • 관계에 필수적으로 참여하는 개체 릴레이션에만 외래키를 포함시킴

                       • 관계의 속성들은 관계에 필수적으로 참여하는 개체 릴레이션에 포함시킴

               • (규칙 4-3) 모든 개체가 일대일 관계에 필수적으로 참여하면 릴레이션을 하나로 합친다.

                       • 관계에 참여하는 개체 릴레이션들을 하나의 릴레이션으로 합쳐서 표현

                       • 관계의 이름을 릴레이션 이름을 사용하고 관계에 참여하는 두 개체의 속성들을 관계 릴레이션에 모두 포함시킴

                       • 두 개체 릴레이션의 키 속성을 조합하여 관계 릴레이션의 기본키로 지정

 

• 논리적 설계 - (규칙 5) 다중 값 속성은 릴레이션으로 변환한다

        • E-R 다이어그램의 다중 값 속성은 독립적인 릴레이션으로 변환

               • 다중 값 속성과 함께 그 속성을 가지고 있던 개체 릴레이션의 기본키를 외래키로 가져와 새로운 릴레이션에 포함시킴

               • 새로운 릴레이션의 기본키는 다중 값 속성과 외래키를 조합하여 지정

 

다중 값 속성을 릴레이션으로 변환하는 규칙을 적용한 예

 

 

 

 

'데이터베이스 (한양대 백현미)' 카테고리의 다른 글

데이터베이스 강의 9  (0) 2021.07.20
데이터베이스 강의 8  (0) 2021.07.20
데이터베이스 강의 6  (0) 2021.07.19
데이터베이스 강의 5  (0) 2021.07.19
데이터베이스 강의 4  (0) 2021.07.19