1 / 31

제 4 장 데이터베이스 설계

제 4 장 데이터베이스 설계. 최 진 탁. 개체 - 관계 모델. 개체 - 관계 모델 (E-R model :Entity- Relationship model) 1976 년 Peter Chen 에 의해 발표됨 개념 스키마 설계시 가장 널리 이용되는 도구 구성 요소 : 개체 (entity), 관계 (relationship), 속성 (attribute) 등 확장 E-R 모델 (EER model :Extended E-R model)

Download Presentation

제 4 장 데이터베이스 설계

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 제4장 데이터베이스 설계 최 진 탁

  2. 개체-관계 모델 • 개체-관계 모델(E-R model :Entity- Relationship model) • 1976년 Peter Chen에 의해 발표됨 • 개념 스키마 설계시 가장 널리 이용되는 도구 • 구성 요소 : 개체(entity), 관계(relationship), 속성(attribute) 등 • 확장 E-R 모델 (EER model :Extended E-R model) • E-R 모델의 개체, 관계, 속성 등의 개념에 일반화, 세분화, 약한 개체 유형, 복합 속성 등과 같은 개념이 추가된 새로운 개념의 E-R 모델

  3. 개체-관계 모델 개념 • 개체: 현실 세계에 존재하는 사물로서 데이터베이스의 모델링의 대상 • 개체 집합 : 공통적으로 같은 속성을 공유하는 개체들 고객,대출 개체 집합 고객 대출 Jones 321-12-3123 Main Harrison L-17 1000 Smith 019-28-3746 North Rye L-23 2000 Hayes 677-89-9011 Main Harrison L-15 1500 Jackson 555-55-5555 Dupont Woodside L-14 1500 Curry 244-66-8800 North Rye L-93 500 Reference : Database System Concepts -Third Edition- Abraham Silberschatz, Henry F. Korth, S. Sudarshan

  4. 개체 타입(Entity Type) 약 개체 타입(Weak Entity Type) 관계 타입(Relationship Type) 약 관계 타입(Weak Relationship Type) 속성(Attribute) 다중값 속성(Multi-valued Attribute) 링크(Link) 개체-관계 모델 기호 기 호 의 미

  5. 교수 학과 강좌 학생 개체-관계 모델 기호(개체) • 개체란? • 실세계에 존재하는 실체를 의미하는 것으로 객체 클래스를 구성함 • 개체 표현 • 개체의 그래픽 표현은 사각형으로 표시됨

  6. 지도 교수 학생 학과 강의 교수 강좌 소속 교수 학생 등록 강좌 학생 (b) 삼항 관계 표현 (a) 이항 관계 표현 개체-관계 모델 기호(관계) • 관계 표현 • 관계는 두 개 이상의 개체들을 연결한 집단화(aggregation)로 구성됨 • 이항 관계(binary relationship), 삼항 관계(ternary relationship), n항 관계가 존재함

  7. 개체-관계 모델 기호(관계) • 관계 표현 • 관계는 두 개 이상의 개체들을 연결한 집단화(aggregation)로 구성됨 • 이항 관계(binary relationship), 삼항 관계(ternary relationship), n항 관계가 존재함 • 매핑 카디널리티 • E-R 모델의 관계는 개체와 연결될 때 대응(mapping)되는 수가 존재하는데 이와 같은 대응수를 말함 • 최대 대응수(maximum cadinality) 와 최소 대응수(minimum cadinality) 로 구분됨 • 이항 관계 매핑 카디널리티 • 일 대 일(1:1, one to one) 관계 • 일 대 다(1:n, one to many) 관계 • 다 대 일(n:1, many to one) 관계 • 다 대 다(n:n, many to many) 관계

  8. One to one One to many A B A B Many to one Many to many A B A B 개체-관계 모델 기호(관계) • 매핑 카디널리티 • E-R 모델의 관계는 개체와 연결될 때 대응(mapping)되는 수 즉, 대응수를 말함 • 최대 대응수(maximum cadinality) 와 최소 대응수(minimum cadinality) 로 구분됨 • 이항 관계 매핑 카디널리티

  9. min-card max-card (1, n) (1, 1) 지도 교수 학생 개체-관계 모델 기호(관계) • 매핑 카디널리티가 포함된 E-R 다이어그램 • 조건 1 : 교수는 꼭 학생에 대한 지도를 해야 한다. min-card(교수, 지도) = 1 • 조건 2 : 교수는 여러 명의 학생을 지도할 수 있다. max-card(교수, 지도) = n • 조건 3 : 학생은 꼭 교수에게 지도를 받아야 한다. min-card(교수, 지도) = 1 • 조건 4 : 학생은 여러 명의 교수에게 지도를 받을 수 없다. max-card(교수, 지도) = 1

  10. 개체-관계 모델 기호(속성) • 속성이란? • 개체 또는 관계에 대한 특성(속성)을 기술하는 데이터 항목을 말함. • 속성의 예 • 개체: 자동차 → 속성 : 제조회사, 엔지크기, 차량색상 • 교수 개체와 강좌 개체를 연결하는 강의 관계 → 속성 : 강의요일,시작시간,강의실 위치 • 속성의 그래픽 표현은 타원으로 표시한다. • 속성의 분류 • 단일 값 속성 : 속성 값이 원자 값인 것으로 하나의 값만 존재하는 것 • 다중 값 속성 : 속성 값이 여러 개 존재할 수 있는 것 • 복합 속성 : 속성 값이 여러 의미를 포함하는 것 • 유도 속성 : 기존 속성 값을 이용하여 새롭게 유도해 낸 속성

  11. (1, n) (0, n) 강의 교수 강좌 요일 시작시간 강의실 개체-관계 모델 기호(속성) • 단일 값 속성(single-valued attribute) • 교수 개체와 강좌 개체를 연결하는 강의 관계에 속성이 포함된 E-R • 단, 강의 관계의 속성에는 강의 요일, 강의 시작시간, 강의실 위치 등이 포함된다.

  12. 취미 (1, n) (0, n) 강의 교수 강좌 요일 시작시간 강의실 개체-관계 모델 기호(속성) • 다중 값 속성(multi-valued attribute) • 그래픽 표현 : 이중 선 타원 • 교수 개체에 다중 값 속성인 취미를 추가한 E-R 다이어그램

  13. 강의 교수 강좌 시·도 구·군 (1, n) (0, n) 읍·면 ·동 주소 번지 요일 시작시간 강의실 우편번호 개체-관계 모델 기호(속성) • 복합 속성(composite attribute) • 교수 개체에 주소 복합 속성을 추가한 E-R 다이어그램

  14. 정규화 • 정규화(normalization) • 논리적 데이터베이스 설계 방법 • E-R 모델을 이용한 설계와 유사한 결과를 나타낸다. • 정규화의 기본 개념 • 설계된 모든 릴레이션은 동등(평등)하지 않음 • 잘못 설계된 릴레이션은 관계 연산시에 발생하는 이상(anomaly) 현상을 제거하기 위해 제약조건을 릴레이션 설계시에 반영해야 함 • 정규형(normal form) • 제약 조건을 반영한 릴레이션 형태 • 반영 정도에 따른 분류 : 1NF, 2NF, 3NF, 4NF, 5NF,

  15. 함수 종속성 • 함수 종속 (FD : Functional Dependency) • 속성들 간에 성립하는 관계 고객 계좌 번호 고객 잔액 학생 번호 전공 컴퓨터 일련번호 메모리 크기 결정자 (Determinant)

  16. 교수 교수번호 교수이름 연구실 소속학과 학과전화 학과장 전공번호 전공이름 학위 학위취득일 전화 4102 4102 4102 4103 4103 4302 4302 4302 4303 4303 4303 4402 4402 4402 4403 4403 4403 0001 0001 0001 0002 0002 0003 0003 0003 0004 0004 0004 0005 0005 0005 0006 0006 0006 김수철 김수철 김수철 이기문 이기문 박동진 박동진 박동진 이재무 이재무 이재무 고병오 고병오 고병오 오염덕 오염덕 오염덕 T102 T102 T102 T103 T103 T302 T302 T302 C303 C303 C303 C402 C402 C402 T403 T403 T403 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 3333 3333 3333 3333 3333 3335 3335 3335 3335 3335 3335 3336 3336 3336 3336 3336 3336 김수철 김수철 김수철 김수철 김수철 최동철 최동철 최동철 최동철 최동철 최동철 최의민 최의민 최의민 최의민 최의민 최의민 001 001 001 002 002 003 003 003 004 004 004 005 005 005 021 006 006 컴퓨터공학 컴퓨터공학 컴퓨터공학 정보과학 정보과학 통신공학 통신공학 통신공학 전자계산학 전자계산학 전자계산학 산업공학 산업공학 산업공학 컴퓨터교육 전자공학 전자공학 공학사 공학석사 공학박사 이학사 이학석사 공학사 공학석사 공학박사 이학사 이학석사 이학박사 공학사 공학석사 공학박사 교육학사 공학석사 공학박사 198602 198802 199408 197902 198302 198002 198202 198708 198402 198602 199002 198402 198602 199008 197602 198002 199608 정규화의 필요성 • 이상현상의 발생 문제 • 잘못 설계된 데이터베이스 릴레이션은 관계 연산시 이상현상을 발생시키므로 이러한 이상현상이 나타나지 않도록 릴레이션을 설계할 필요가 있다. • 이상 현상이 발생하는 릴레이션

  17. 정규화의 필요성-갱신이상 • 갱신 이상 • 릴레이션 R에서 특정 속성 값 갱신 시에 중복 저장되어 있는 속성 값 중 하나만 갱신하고, 나머지 것은 갱신하지 않아 발생하는 데이터의 불일치 현상을 갱신 이상이라 한다. • 갱신 이상 사례 교수 교수번호 교수이름 연구실 소속학과 학과전화 학과장 전공번호 전공이름 학위 학위취득일 전화 4101 4102 4102 4103 4103 4302 4302 4302 4303 4303 4303 4402 4402 4402 4403 4403 4403 0001 0001 0001 0002 0002 0003 0003 0003 0004 0004 0004 0005 0005 0005 0006 0006 0006 김수철 김수철 김수철 이기문 이기문 박동진 박동진 박동진 이재무 이재무 이재무 고병오 고병오 고병오 오염덕 오염덕 오염덕 T102 T102 T102 T103 T103 T302 T302 T302 C303 C303 C303 C402 C402 C402 T403 T403 T403 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 3333 3333 3333 3333 3333 3335 3335 3335 3335 3335 3335 3336 3336 3336 3336 3336 3336 김수철 김수철 김수철 김수철 김수철 최동철 최동철 최동철 최동철 최동철 최동철 최의민 최의민 최의민 최의민 최의민 최의민 001 001 001 002 002 003 003 003 004 004 004 005 005 005 021 006 006 컴퓨터공학 컴퓨터공학 컴퓨터공학 정보과학 정보과학 통신공학 통신공학 통신공학 전자계산학 전자계산학 전자계산학 산업공학 산업공학 산업공학 컴퓨터교육 전자공학 전자공학 공학사 공학석사 공학박사 이학사 이학석사 공학사 공학석사 공학박사 이학사 이학석사 이학박사 공학사 공학석사 공학박사 교육학사 공학석사 공학박사 198602 198802 199408 197902 198302 198002 198202 198708 198402 198602 199002 198402 198602 199008 197602 198002 199608 동일한 데이터임에도 불구하고 데이터의 불일치 발생

  18. 원하지 않은 데이터의 삭제 발생 즉, 전공과 학위에 관한 정보가 손실된다. 교수 교수번호 교수이름 연구실 소속학과 학과전화 학과장 전공번호 전공이름 학위 학위취득일 전화 4102 4102 4102 4103 4103 4302 4302 4302 4303 4303 4303 4402 4402 4402 4403 4403 4403 0001 0001 0001 0002 0002 0003 0003 0003 0004 0004 0004 0005 0005 0005 0006 0006 0006 김수철 김수철 김수철 이기문 이기문 박동진 박동진 박동진 이재무 이재무 이재무 고병오 고병오 고병오 오염덕 오염덕 오염덕 T102 T102 T102 T103 T103 T302 T302 T302 C303 C303 C303 C402 C402 C402 T403 T403 T403 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 3333 3333 3333 3333 3333 3335 3335 3335 3335 3335 3335 3336 3336 3336 3336 3336 3336 김수철 김수철 김수철 김수철 김수철 최동철 최동철 최동철 최동철 최동철 최동철 최의민 최의민 최의민 최의민 최의민 최의민 001 001 001 002 002 003 003 003 004 004 004 005 005 005 021 006 006 컴퓨터공학 컴퓨터공학 컴퓨터공학 정보과학 정보과학 통신공학 통신공학 통신공학 전자계산학 전자계산학 전자계산학 산업공학 산업공학 산업공학 컴퓨터교육 전자공학 전자공학 공학사 공학석사 공학박사 이학사 이학석사 공학사 공학석사 공학박사 이학사 이학석사 이학박사 공학사 공학석사 공학박사 교육학사 공학석사 공학박사 198602 198802 199408 197902 198302 198002 198202 198708 198402 198602 199002 198402 198602 199008 197602 198002 199608 정규화의 필요성-삭제이상 • 삭제 이상 • 릴레이션 R에서 특정 투플을 삭제할 경우 원하지 않는 정보까지도 삭제되는 현상을 삭제 이상이라 한다. • 삭제 이상 사례

  19. 정규화의 필요성-삽입이상 • 삽입 이상 • 릴레이션 R에서 특정 투플을 삽일할 경우 원하지 않는(불필요한) 정보까지도 삽입 하는 현상을 삽입 이상이라 한다. • 삽입 이상 사례 교수 교수번호 교수이름 연구실 소속학과 학과전화 학과장 전공번호 전공이름 학위 학위취득일 전화 4102 4102 4102 4103 4103 4302 4302 4302 4303 4303 4303 4402 4402 4402 4403 4403 4403 0001 0001 0001 0002 0002 0003 0003 0003 0004 0004 0004 0005 0005 0005 0006 0006 0006 김수철 김수철 김수철 이기문 이기문 박동진 박동진 박동진 이재무 이재무 이재무 고병오 고병오 고병오 오염덕 오염덕 오염덕 T102 T102 T102 T103 T103 T302 T302 T302 C303 C303 C303 C402 C402 C402 T403 T403 T403 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 컴퓨터공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보통신공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 정보산업공학과 3333 3333 3333 3333 3333 3335 3335 3335 3335 3335 3335 3336 3336 3336 3336 3336 3336 김수철 김수철 김수철 김수철 김수철 최동철 최동철 최동철 최동철 최동철 최동철 최의민 최의민 최의민 최의민 최의민 최의민 001 001 001 002 002 003 003 003 004 004 004 005 005 005 021 006 006 100 컴퓨터공학 컴퓨터공학 컴퓨터공학 정보과학 정보과학 통신공학 통신공학 통신공학 전자계산학 전자계산학 전자계산학 산업공학 산업공학 산업공학 컴퓨터교육 전자공학 전자공학 벤처공학 공학사 공학석사 공학박사 이학사 이학석사 공학사 공학석사 공학박사 이학사 이학석사 이학박사 공학사 공학석사 공학박사 교육학사 공학석사 공학박사 198602 198802 199408 197902 198302 198002 198202 198708 198402 198602 199002 198402 198602 199008 197602 198002 199608 이 정보 만으로는 릴레이션에 저장할 수 없다. 즉, 불필요한 정보도 함께 저장되어야만 한다.

  20. 정규형 • 무손실 분해(lossless decomposition) • 릴레이션을 분해한 후, 분해한 릴레이션을 조인하여 저장 정보의 손실이 없이 원래의 릴레이션을 생성할 수 있는 것 • 정규형 간의 관계 • 기본 정규형 : 1NF부터 BCNF까지 • 고급 정규형 : 4NF와 5NF • 1NF는 제약 조건이 가장 적게 적용된 정규형임 • 5NF는 제약 조건이 가장 많이 적용된 정규형임 • 2NF는 1NF의 제약조건을 만족한다는 의미임

  21. 비정규형 1NF 2NF 3NF BCNF 4NF 5NF(PJ/NF) BCNF : Boyce-Codd NF PJ/NF : Projection-Join NF 정규형간의 관계

  22. 교수 전화 교수번호 교수이름 연구실 소속학과 학과전화 학과장 전공번호 전공이름 학위 학위취득일 함수 종속성(FD) 교수번호  교수이름, 연구실, 전화, 소속학과 학과  학과전화, 학과장 전공번호  전공이름 교수번호, 학위  전공번호, 학위취득일 제1정규형(1NF) • 정의 • 릴레이션 R에 포함되는 속성의 값이 다중값(multi value)을 지원하지 않고, 원자값(atomic value)만을 지원할 경우 제 1 정규형이다. • 제1 정규형의 예

  23. 교수 전화 교수번호 교수이름 연구실 소속학과 학과전화 학과장 교수_전공 교수번호 전공번호 전공이름 학위 학위취득일 함수 종속성(FD) 교수번호  교수이름, 연구실, 전화, 소속학과 학과  학과전화, 학과장 전공번호  전공이름 교수번호, 학위  전공번호, 학위취득일 제2정규형(2NF) • 정의 • 릴레이션 R이 제 1 정규형의 조건을 만족하고, 릴레이션의 기본키가 아닌 속성들이 기본키에 완전히 함수적으로 종속할 경우 제 2 정규형이다. • 제2 정규형의 예

  24. 동일한 데이터임에도 불구하고 데이터의 불일치 발생 교수 교수번호 교수이름 연구실 소속학과 학과전화 학과장 전화 4101 4102 4103 4302 4303 4402 4403 0001 0001 0002 0003 0004 0005 0006 김수철 김수철 이기문 박동진 이재무 고병오 오염덕 T102 T102 T103 T302 C303 C402 T403 컴퓨터공학과 전자계산학과 컴퓨터공학과 정보통신공학과 정보통신공학과 정보산업공학과 정보산업공학과 3333 3337 3333 3335 3335 3336 3336 김수철 김수철 김수철 최동철 최동철 최의민 최의민 제2정규형(2NF) • 제2 정규형의 갱신이상사례

  25. 교수_전공 교수번호 전공번호 전공이름 학위 학위취득일 0001 0001 0001 0002 0002 0003 0003 0003 0004 0004 0004 0005 0005 0005 0006 0006 0006 001 001 001 002 002 003 003 003 004 004 004 005 005 005 021 006 006 컴퓨터공학 컴퓨터공학 컴퓨터공학 정보과학 정보과학 통신공학 통신공학 통신공학 전자계산학 전자계산학 전자계산학 산업공학 산업공학 산업공학 컴퓨터교육 전자공학 전자공학 공학사 공학석사 공학박사 이학사 이학석사 공학사 공학석사 공학박사 이학사 이학석사 이학박사 공학사 공학석사 공학박사 교육학사 공학석사 공학박사 198602 198802 199408 197902 198302 198002 198202 198708 198402 198602 199002 198402 198602 199008 197602 198002 199608 원하지 않은 데이터의 삭제 발생 즉, 전공번호와 전공이름에 관한 정보가 손실된다. 제2정규형(2NF) • 제2 정규형의 삭제이상사례

  26. 전공 전공번호 전공이름 교수_전공 교수번호 학위 전공번호 학위취득일 교수 전화 소속학과 교수번호 교수이름 연구실 학과 학과 학과전화 학과장 함수 종속성(FD) 교수번호  교수이름, 연구실, 전화, 소속학과 학과  학과전화, 학과장 전공번호  전공이름 교수번호, 학위  전공번호, 학위취득일 제3정규형과 BCNF • 제3정규형(3NF)정의 • 릴레이션 R이 제2정규형의 조건을 만족하고, 기본키가 아닌 모든 속성들이 기본키에 대하여 이행적 함수 종속성(transitive FD)의 관계를 가지지 않는 경우 제 3 정규형이다. • BCNF 정의 • 릴레이션 R의 모든 결정자가 후보키일 경우 BCNF 이다. • 제3정규형의 예 (BCNF도 만족)

  27. 교수_전공 교수_전공 학위 전공번호 교수번호 전공번호 전공이름 학위 학위취득일 교수번호 전공이름 학위취득일 공학사 공학석사 공학박사 이학사 이학석사 공학사 공학석사 공학박사 이학사 이학석사 이학박사 공학사 공학석사 공학박사 교육학사 공학석사 공학박사 001 001 001 002 002 003 003 003 004 004 004 005 005 005 021 006 006 0001 0001 0001 0002 0002 0003 0003 0003 0004 0004 0004 0005 0005 0005 0006 0006 0006 001 001 001 002 002 003 003 003 004 004 004 005 005 005 021 006 006 컴퓨터공학 컴퓨터공학 컴퓨터공학 정보과학 정보과학 통신공학 통신공학 통신공학 전자계산학 전자계산학 전자계산학 산업공학 산업공학 산업공학 컴퓨터교육 전자공학 전자공학 공학사 공학석사 공학박사 이학사 이학석사 공학사 공학석사 공학박사 이학사 이학석사 이학박사 공학사 공학석사 공학박사 교육학사 공학석사 공학박사 198602 198802 199408 197902 198302 198002 198202 198708 198402 198602 199002 198402 198602 199008 197602 198002 199608 0001 0001 0001 0002 0002 0003 0003 0003 0004 0004 0004 0005 0005 0005 0006 0006 0006 컴퓨터공학 컴퓨터공학 컴퓨터공학 정보과학 정보과학 통신공학 통신공학 통신공학 전자계산학 전자계산학 전자계산학 산업공학 산업공학 산업공학 컴퓨터교육 전자공학 전자공학 198602 198802 199408 197902 198302 198002 198202 198708 198402 198602 199002 198402 198602 199008 197602 198002 199608 유일성이 없다. (기본 키로 사용 불가) 유일성이 있다. (기본 키로 사용 가능) 제3정규형과 BCNF • 주의 • (교수번호, 학위) 속성을 기본키로 정의하고, (교수번호,전공번호)를 기본키로 정의 하지 않은 것은 한 교수가 동일한 전공으로 여러 학위를 할 수 있기 때문이다. 예를 들면, 교수번호가 0001번인 교수는 컴퓨터공학으로 학사, 석사, 박사 학위를 하였다. 컴퓨터 공학은 전공번호가 001번으로 동일하기 때문에 (교수번호, 전공번호)를 기본키로 할 경우, 한 릴레이션에 3개의 동일한 투플이 존재하여 유일성을 상실하게 된다.

  28. 외래키 교수 전화 소속학과 교수번호 교수이름 연구실 교수의 소속 학과 정보를 조인 연산으로 확인 가능 학과 학과 학과전화 학과장 전공 전공번호 전공이름 교수의 전공 정보를 조인 연산으로 확인 가능 교수_전공 교수번호 학위 전공번호 학위취득일 외래키 제3정규형과 BCNF • 제3정규형에서 정의한 각 릴레이션 간의 관계

  29. → 다치종속성과 제4정규형 • 함수적 종속성은 한가지 형태만의 제약조건을 명기한다(이 제약조건은 매우 흔히 일어나는 것임). • 함수적 종속성만에 의해서 명기될 수 없는 다른 형태의 제약조건들이 존재한다. • 추가적인 종속성에는 다치 종속성(multivalued dependency) 등이 있다. • 이런 추가적인 종속성으로 인하여 제 3 정규형이나 BCNF 정규형을 넘어선 정규형을 정의할 수 있다. • 다치 종속성(MVD)은 XY로 표기한다.

  30. → 제4정규형(4NF) • 제 4 정규형(4NF): • 3NF와 BCNF는 다치 종속성을 다루지 않는다. • 비단순 다치 종속성을 가지는 릴레이션 스키마는 좋은 디자인이 아닐 수 있다. • 제 4 정규형은 위와 같은 문제를 다루며, 제 4 정규형에 속하는 모든 릴레이션은 자동적으로 BCNF 정규형을 갖는다. • 제 4 정규형의 정형적 정의: • 함수적 및 다치 종속성들의 집합 F에 대한 F+의 모든 비단순 다치 종속성 X Y 에 대하여, X가 R의 수퍼키이면 릴레이션 스키마 R은 F에 대한 제 4 정규형이라고 한다.

  31. 제5정규형(5NF) • PJ/NF(Projection-Join Normal Form)릴레이션 스키마 R에서의 모든 조인종속성이 릴레이션 스키마 R은 후보키를 통해서만 성립된다면 릴레이션 스키마 R은 제5정규형 또는 PJ/NF에 속한다

More Related