Presentation is loading. Please wait.

Presentation is loading. Please wait.

ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts

Similar presentations


Presentation on theme: "ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts"— Presentation transcript:

1 ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts
7장 논리적 설계 컴퓨터정보과 김진숙 ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts

2 공부할 내용 관계형 데이터베이스에 대하여 알아본다. 관계형 데이터베이스에서 사용되는 용어들과 제약조건에 대하여 알아본다.
ER 다이어그램을 관계형 스키마로 변환시킬 수 있어야 한다.

3 논리적 설계가 필요한 이유 ERD 논리적 설계 인간이 쉽게 이해하고 소통하기 위해 도입한 수단 컴퓨터가 이해하기는 부적합
데이터 모델을 선택하고 그에 적합한 논리적 설계 실시 데이터베이스 스키마가 논리적 설계의 산출물 데이터 모델 중 관계형 데이터 모델을 선택함  ERD를 관계형 DBMS 구조에 매핑시키는 작업

4 7.1 관계형 데이터베이스 관계형 데이터베이스의 용어(196쪽) = entity type = entity = record
도메인(domain) : 한 애트리뷰트에 나타날 수 있는 값 차수(degree) : 한 릴레이션의 애트리뷰트의 수 카디넬리티(cardinality) : 한 릴레이션의 튜플의 수

5 7.1 관계형 데이터베이스 1. 관계형 데이터베이스 용어 릴레이션(테이블) 투플(레코드 또는 행) 애트리뷰트(속성 또는 열)
흔히 부르는 테이블이라는 이름으로 사용되고 있다. 투플(레코드 또는 행) 관계를 구성하는 각각의 행으로 애트리뷰트의 집합으로 구성 애트리뷰트(속성 또는 열) DB를 구성하는 가장 작은 논리적 단위로 개체의 특성을 기술 도메인 애트리뷰트가 취할 수 있는 같은 타입의 원자값들의 집합 실제 애트리뷰트 값이 나타날 때, 그 값의 유효 여부를 시스템이 검사하는 데에도 이용

6 2. 식별자(Identifier) 유형 슈퍼키(Super Key) 후보키(Candidate Key)
한 릴레이션 내에 있는 속성들의 집합으로 구성된 키 관계 있는 모든 튜플에 대해 유일성(Unique)은 만족하나 최소성(Minimality)은 만족시키지 못함 예: 테이블 - 학생(학번, 주민번호, 성명)  슈퍼키 : 학번, 주민번호, (학번,주민번호), (학번, 주민번호, 성명) 후보키(Candidate Key) 애트리뷰트들 중에서 투플을 유일하게 식별하려고 사용하는 애트리뷰트들의 부분집합(기본키가 될 수 있는 키) 유일성과 최소성을 만족시킴 유일성 : 키 값으로 하나의 튜플만을 유일하게 식별할 수 있어야 한다. 최소성 : 키를 구성하는 속성 중 하나를 제거하면 식별이 가능하지 않는 특성 키는 반드시 필요한 최소의 속성으로 구성되어야 함

7 기본키(Primary Key) 외래키(Foreign Key) 대체키(Alternate Key) 후보키 중에서 선택한 주 키
널(Null)을 값으로 가질 수 없다. 동일한 값이 중복해서 저장될 수 없다. 유일성과 최소성을 만족시킨다. 외래키(Foreign Key) 관계를 맺는 두 릴레이션에서 참조하는 릴레이션에 애트리뷰트로 지정되는 키 값을 말한다. 대체키(Alternate Key) 후보키 중 기본키로 선택되지 않은 나머지 키

8 3. 관계형 데이터베이스에서의 제약조건 ① 키 제약조건 ② 도메인 제약조건
키 애트리뷰트의 값은 릴레이션 내의 각 투플을 유일하게 식별해야 한다. ② 도메인 제약조건 각 애트리뷰트의 값은 반드시 도메인에 속하는 원자값(atomic value)이어야 함

9 ③ 개체무결성 제약조건(Entity Integrity Constraint)
어떠한 기본키값도 널(Null)값을 가질 수가 없다. ④ 참조 무결성 제약조건(Referential Integrity Constraint) 한 릴레이션의 투플이 다른 릴레이션의 투플을 참조하려면 반드시 참조되는 투플값이 해당 릴레이션내에 있어야 한다는 것 무결성(Integrity) : 데이터베이스에 저장된 데이터 값과 그것이 표현하는 현실세계의 실제값이 일치하는 정확성을 의미 무결성 제약조건(Integrity Constraint) : 데이터베이스에 저장된 데이터의 정확성을 보장하기 위해 정확하지 않은 데이터가 데이터베이스 내에 저장되는 것을 방지하기 위한 제약조건 의미

10 4. 무결성 제약조건의 필요성 삽입 연산 삭제 연산 수정 연산 삽입되는 투플의 속성값이 도메인에 없으면 도메인 제약조건 위반
삽입되는 투플의 기본키값이 다른 투플에 있다면 키 제약조건 위반 삽입되는 투플의 기본키값이 null이면 개체무결성 제약조건 위반 삽입되는 투플의 외래키값이 참조되는 릴레이션의 키 값으로 존재하지 않으면 참조무결성 제약조건 위반 삭제 연산 다른 테이블에서 참조하고 있는 투플을 삭제하면 참조무결성 제약 조건 위반 수정 연산 삽입과 삭제 시 문제점이 모두 일어남

11 ER 다이어그램을 관계형 스키마로 변환하는 과정
7.2 관계형 스키마 작성 ER 다이어그램을 관계형 스키마로 변환하는 과정

12 ER 다이어그램을 관계형 스키마로 매핑하는 변환 과정

13

14 1. 엔티티 타입을 관계형 스키마로 매핑 엔티티 타입을 릴레이션(테이블)로 변환 엔티티 타입의 이름을 릴레이션의 이름으로 지정
엔티티 타입의 애트리뷰트를 릴레이션의 애트리뷰트로 지정 다치 애트리뷰트가 있을 경우 현 단계에서는 포함시키지 않음 유도된 애트리뷰트(B)의 경우에는 설계자의 선택에 따름

15

16 2. 약한 엔티티 타입을 관계형 스키마로 매핑 소유 엔티티에 있던 기본키와 약한 엔티티의 부분키를 합쳐서 변환된 릴레이션의 기본키로 지정

17 3. 관계 타입의 변환(1:1인 경우) 관계 타입에 대해 엔티티 타입이 전체 참여 여부에 따라 분류
외래키 접근방식(대부분의 경우) 전체참여를 하고 있는 개체에 전체참여를 하고 있지 않은 개체의 주키를 외래키로 참여시킨다. 관계타입이 가지고 있는 속성도 전체참여 개체에 포함시킨다.

18 (2) 병합된 릴레이션 접근방식 관계타입 R에 대해 모두 전체참여를 하고 있을 때 바람직 양쪽이 모두 전체 참여일 경우 두 개체를 병합해 하나의 릴레이션으로 변환

19 4. 관계 타입의 변환(1:N 인 경우) 1에 해당하는 개체의 기본키를 N에 해당하는 개체의 외래키로 포함시킴
그림 7-14 1:N 관계 타입의 변환

20 5. 관계 타입의 변환(M:N인 경우) M:N 관계는 관계타입을 표현하는 새로운 릴레이션을 생성한다.
새 릴레이션은 관계에 참여한 개체들의 기본키를 외래키로 참여시킨다. 새 릴레이션의 기본키는 참여한 외래키의 조합이 된다. 그림 7-16 M:N 관계 타입의 변환

21 6. 다치 애트리뷰트를 관계형 스키마로 매핑 다치 속성은 새로운 릴레이션을 생성한다.
새 릴레이션에 다치 속성을 포함시키고 속해있던 개체의 기본키를 외래키로 참여시킨다. 그림 7-18 다치 에트리뷰트를 관계형 스키마로 매핑

22 N차 관계 타입을 관계형 스키마로 매핑 N차 이상의 관계 타입에 대응하는 새 릴레이션을 생성한다.
관계타입의 모든 단순 속성을 새 릴레이션에 포함시킨다. 참여한 객체 타입의 기본키들을 외래키로 참여시킨다. 개체타입 중 관계타입의 카딜널리티 제약조건이 1이면 이 개체타입의 기본키는 외래키로 새 릴레이션에 참여는 하지만 기본키는 될 수 없다 (214쪽 참조) . 그림 7-20 3차 관계 타입을 관계형 스키마로 매핑

23 ISA 관계 타입을 관계형 스키마로 매핑 각각의 개체를 모두 관계형 스키마로 변환 학생 재학생 휴학생 졸업생 학번 이름 학과
재학번호 휴학번호 휴학날짜 졸업번호 졸업날짜 학생 학번 이름 학과 재학생 휴학생 졸업생 학번 재학번호 학번 휴학날짜 휴학번호 학번 졸업날짜 졸업번호

24 ER 다이어그램과 관계 모델과의 대응 관계 (Mapping Rule)
엔티티 타입 릴레이션 1:1 또는 1:N 관계 타입 외래키(또는 관계 릴레이션) M:N 관계 타입 릴레이션과 두 외래키 N차 관계 타입 l 관계 릴레이션과 N개의 외래키 단순 애트리뷰트 애트리뷰트 복합 애트리뷰트 단순 애트리뷰트들의 집합 다치 애트리뷰트 릴레이션과 외래키 값의 집합 도메인 키 애트리뷰트 기본키

25 ERD를 논리스키마(관계스키마)로 변환 1. 학사관리

26 ERD를 논리스키마(관계스키마)로 변환 2. 직원관리
어떤 회사의 직원은 직원ID로 식별되고 이름, 급여, 전화번호 정보 를 가진다. 부서는 부서ID로 식별되고 부서이름과 예산이라는 속성을 가진다. 직원은 부서에서 근무하고 각 부서에는 이를 관리하는 직원이 한 사람씩 있다. 직원자녀(이름, 생년월일)들을 한 사람씩 식별하기 위해서는 그 부 모(직원으로 부모 중 한 사람만 이 회사에 근무한)를 안 후 다시 이 름을 알아야 한다. 부모가 회사를 떠나면 그 자녀에 대한 정보는 더 이상 필요하지 않다.

27

28

29 요약 관계형 데이터베이스에 대하여 알아본다. 관계형 데이터베이스에서 사용되는 용어들과 제약조건에 대하여 알아본다.
ER 다이어그램을 관계형 스키마로 변환시킬 수 있어야 한다.


Download ppt "ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts"

Similar presentations


Ads by Google