Microsoft PowerPoint - 7(ERModeling) [호환 모드]

Similar documents
<4D F736F F F696E74202D E DB0FCB0E820BBE7BBF3BFA120C0C7C7D120B0FCB0E820B5A5C0CCC5CDBAA3C0CCBDBA20BCB3B0E8>

슬라이드 제목 없음

슬라이드 제목 없음

내용 3.1 관계모델의개념 3.2 관계제약조건과관계형데이타베이스스키마 3.3 갱신연산과트랜잭션그리고제약조건의위반처리 3.4 요약 Ch6 Fundamentas of Database Systems 2

<C1A62038B0AD20B0ADC0C7B3EBC6AE2E687770>

Microsoft PowerPoint - QVIZMVUMWURI.pptx

PowerPoint 프레젠테이션

VENUS Express 사용자 매뉴얼

2 장. E/R 데이터모델 엔티티-관계성 (Entity-Relationship) 모델의요소설계원칙제약 (constraint) 의모델링약엔티티집합 (weak entity set) 2

금오공대 컴퓨터공학전공 강의자료

PowerPoint Presentation

03-최신데이터

<4D F736F F F696E74202D E20B0FCB0E820B5A5C0CCC5CD20B8F0B5A8B0FA20B0FCB0E820B5A5C0CCC5CDBAA3C0CCBDBA20C1A6BEE020C1B6B0C7>

03-01 데이터모델링과데이터모델의개념 개체-관계모델 논리적데이터모델

12. 데이타베이스 설계

PowerPoint Template

Microsoft PowerPoint - 13(FD1) [호환 모드]

PowerPoint 프레젠테이션

슬라이드 제목 없음

Microsoft PowerPoint - 2장 (DBConcepts) [호환 모드]

Microsoft PowerPoint - 27.pptx

Microsoft PowerPoint 관계 대수 및 관계 해석(Part 1)

슬라이드 제목 없음

Microsoft PowerPoint 관계 DB의 FD와 정규화

Microsoft PowerPoint - 3장-MS SQL Server.ppt [호환 모드]

<4D F736F F F696E74202D E20B0FCB0E BCB3B0E820BECBB0EDB8AEC1F2B0FA20C3DFB0A1C0FB20C1A4B1D4C7FC>

데이터베이스-4부0816

슬라이드 제목 없음

ecorp-프로젝트제안서작성실무(양식3)

0914ä¿òÇÕº».PDF

Microsoft PowerPoint - 26.pptx

untitled

Spring Data JPA Many To Many 양방향 관계 예제


0802¼þ½Çµ¿¹®È¸-69È£ÃâÃâ

금오공대 컴퓨터공학전공 강의자료

Microsoft PowerPoint SQL 추가 기능

금오공대 컴퓨터공학전공 강의자료

第 1 節 組 織 11 第 1 章 檢 察 의 組 織 人 事 制 度 등 第 1 項 大 檢 察 廳 第 1 節 組 대검찰청은 대법원에 대응하여 수도인 서울에 위치 한다(검찰청법 제2조,제3조,대검찰청의 위치와 각급 검찰청의명칭및위치에관한규정 제2조). 대검찰청에 검찰총장,대

DBPIA-NURIMEDIA


슬라이드 1

Object Oriented Analyis & Design Training Agenda

PART

Part Part

£01¦4Àå-2

½ºÅ丮ÅÚ¸µ3_³»Áö

272*406OSAKAÃÖÁ¾-¼öÁ¤b64ٽÚ

U.Tu System Application DW Service AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형

2014밝고고운동요부르기-수정3

2005프로그램표지

Microsoft PowerPoint - 5 [호환 모드]

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

44-3대지.08류주현c

Microsoft PowerPoint - 4(SQL-Data Definition,BasicQuery) [호환 모드]

01-OOPConcepts(2).PDF

슬라이드 제목 없음

Microsoft PowerPoint SQL-99

Microsoft Word - Application for Exemption from Schooling _Confidential__KOREAN

금오공대 컴퓨터공학전공 강의자료

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000

thesis

슬라이드 제목 없음

Microsoft PowerPoint - 사본 - OAS09-사무자동화 기술(DB).ppt

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다

소프트웨어공학 Tutorial #2: StarUML Eun Man Choi


*2009데이터_3부

DE1-SoC Board

슬라이드 1

자연언어처리

2002년 2학기 자료구조

<4D F736F F F696E74202D20BFC0B6F3C5AC2D38C0E52DBAE4BFCD20BDC3BDBAC5DB20C4ABC5BBB7CEB1D72DBFC0B6F3C5AC2E BC8A3C8AF20B8F0B

OCW_C언어 기초

MVVM 패턴의 이해

1.장인석-ITIL 소개.ppt

chap 5: Trees

: 4 2. : (KSVD) 4 3. :

PowerPoint Presentation

Microsoft PowerPoint - 6 [호환 모드]

Microsoft PowerPoint Relations.pptx

별지 제10호 서식


<C1B6BBE7BFACB1B D303428B1E8BEF0BEC B8F1C2F7292E687770>

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

Chapter 1: 데이터베이스시스템개관

제8장 자바 GUI 프로그래밍 II

USER GUIDE

MySQL-.. 1

< B3E220C1A4BAB8C3B3B8AEBBEABEF7B1E2BBE B3E2B0A320B1E2C3E2B9AEC1A6C0BAC7E02E687770>

1+2월호-최종2

KT Community Relations White Book

저작자표시 - 비영리 - 변경금지 2.0 대한민국 이용자는아래의조건을따르는경우에한하여자유롭게 이저작물을복제, 배포, 전송, 전시, 공연및방송할수있습니다. 다음과같은조건을따라야합니다 : 저작자표시. 귀하는원저작자를표시하여야합니다. 비영리. 귀하는이저작물을영리목적으로이용할


<352EC7E3C5C2BFB55FB1B3C5EBB5A5C0CCC5CD5FC0DABFACB0FAC7D0B4EBC7D02E687770>

<313920C0CCB1E2BFF82E687770>

¼±ÅÃÀû º¹¸®ÈÄ»ýÁ¦µµ.hwp

The Relational Model

<4D F736F F F696E74202D20BFC0B6F3C5AC2D31C0E52DB5A5C0CCC5CDBAA3C0CCBDBA20BDC3BDBAC5DB2E BC8A3C8AF20B8F0B5E55D>

Transcription:

제 7 장 엔터티 - 관계를사용한 개념적데이타모델링 Fundamentals of Database Systems R A Elmasri and S B Navathe

목차 71 데이타베이스설계를위한고수준개념적데이타모델의사용 72 간단한예제데이타베이스응용 73 엔터티타입, 엔터티집합, 애트리뷰트, 키 74 관계, 관계타입, 역할, 구조적제약조건 75 약한엔티티타입 (Weak Entity Type) 76 COMPANY 데이타베이스에대한 ER 설계의개선 77 ER 다이어그램, 이름지정에관한규칙, 설계에관한사항 78 3 차이상의관계타입 79 요약 2

개요 개념적모델링은데이타베이스설계에있어중요한단계임 이장에서는개체-관계 (Entity-Relationship: ER) 모델을사용한개념적모델링기법소개함 3

71 DB 설계를위한고수준의개념적데이타모델사용 [ 그림 71] 데이타베이스설계의단계들작은세계 Functional Requirements FUNCTIONAL ANALYSIS High-level Transaction Specification DBMS-independent DBMS-specific APPLICATION PROGRAM DESIGN TRANSACTION IMPLEMENTATION Application Programs 요구사항들의수정과분석 데이타베이스요구사항들 개념적설계 개념스키마 ( 데이타모델사상 ) LOGICAL DESIGN (DATA MODEL MAPPING) Logical (Conceptual) Schema (In the data model of a specific DBMS) PHYSICAL DESIGN Internal Schema (For the same DBMS) 4

72 간단한예제데이타베이스응용 COMPANY 데이타베이스의작은세계 1 회사는여러부서들로구성된다 각부서마다고유한이름, 고유한번호, 부서를관리하는특정사원이있다 사원이부서를관리하기시작한날짜도유지한다 한부서는여러위치에있을수있다 2 한부서는여러프로젝트들을관리한다 각프로젝트는고유한이름, 고유한번호, 한개의위치를가진다 3 각사원에대해서이름, 사회보장번호, 주소, 급여, 성별, 생년월일을저장한다 한사원은한부서에속하지만, 여러프로젝트들에관여할수있다 한사원이관여하는프로젝트들은그사원이소속된부서가관리하는프로젝트가아니어도무방하다 반드시한부서의각사원이각프로젝트를위해일하는주당근무시간을기록한다 또한각사원의직속상사도유지한다 4 보험목적을위해서각사원의부양가족들을기록한다 각부양가족에대해서이름, 성별, 생년월일, 사원과의관계를기록한다 5

Fname Minit Lname 개념적설계의결과 Number Name Address N 1 WORKS_FOR Name Locations Sex Salary Ssn EMPLOYEE Bdate supervisee supervisor 1 SUPERVISION N StartDate 1 NumberOfEmployees 1 DEPATMENT 1 MANAGES CONTROLS Hours N M N WORKS_ON PROJECT 1 Name DEPENDENTS_OF Location N Number DEPENDENT Name Sex BirthDate Relationship [ 그림 72] COMPANY 데이타베이스를위한 ER 스키마다이어그램 6

73 엔터티타입, 엔터티집합, 애트리뷰트, 키 ER 모델은데이터를엔티티 ( 개체 ), 관계, 에트리뷰트 ( 속성 ) 로모델링함 엔티티와애트리뷰트 엔티티 : 실세계에서독립적으로존재하는실체 애트리뷰트 : 엔티티를기술하는속성 Name = John Smith Name = Sunco Oil e 1 Address = 2311 Kirby, Houston, Texas 77001 c 1 Headquarters = Houston Age = 55 HomePhone = 713-749-2630 President = John Smith [ 그림 73] 두개의엔티티 ( 직원 e 1 과회사 c 1 ) 와애트리뷰트및값 7

73 엔터티타입, 엔터티집합, 애트리뷰트, 키 애트리뷰트유형 복합애트리뷰트 단순애트리뷰트 Address StreetAddress City State Zip Number Street ApartmentNumber [ 그림 74] 복합애트리뷰트의계층구조 단일값애트리뷰트 다치애트리뷰트 저장된애트리뷰트 유도된애트리뷰트 8

73 엔터티타입, 엔터티집합, 애트리뷰트, 키 널값 두가지로사용됨 ; 적용할수없음 이라는의미와 알려지지않음 의의미 복합 (composite) 애트리뷰트 {AddressPhone({Phone (AreaCode, PhoneNumber)}, Address(StreetAddress(Number, Street,ApartmentNumber), City, State, Zip ) ) } [ 그림 75] 다치와복합구성요소를가지는복합애트리뷰트 AddressPhone 9

73 엔터티타입, 엔터티집합, 애트리뷰트, 키 엔티티타입 : 엔터티집합 [ 그림 76] 두개체타입과이에속하는개체들 엔터티타입의이름 : 애트리뷰트이름 EMPLOYEE COMPANY Name, Age, Salary Name, Headquarters, President 엔터티집합 ( 외연 ) 애트리뷰터값 e1 (John Smith, 55, 80k) e2 (Fred Brown, 40, 30K) e3 (Judy Clark, 25, 20K) : c1 (Sunco Oil, Houston, John Smith) c2 (Fast Computer, Dallas, Bob King) : : 10

73 엔터티타입, 엔터티집합, 애트리뷰트, 키 [ 그림 77] CAR 엔터티타입 CAR Registration(RegistrationNumber, State), VehicleID, Make, Model, Year, {Color} car1 ((ABC 123, TEXAS), TK629, Ford Mustang, convertible, 1989, {red,black}) car2 ((ABC 123, NEW YORK), WP9872, Nissan Sentra, 2-door, 1992, {blue}) car3 ((VSY 720, TEXAS), TD729, Chrysler LeBaron, 4-door, 1993, {white, blue}) : 11

73 엔터티타입, 엔터티집합, 애트리뷰트, 키 키애트리뷰트 각엔티티마다서로다른값을가지는애트리뷰트 그림 32에서 COMPANY 엔티티타입에서키애트리뷰트는 Name PERSON 엔티티타입의키애트리뷰트는 SocialSecurityNumber 복합키 두개이상의애트리뷰트들이모여서하나의키애트리뷰트역할을하는키 값집합 ( 도메인 ) 각엔티티에서애트리뷰트가가질수있는값들의집합 EMPLOYEE의 Age 애트리뷰트의값집합은? (16부터 70 사이의정수집합 ) 12

73 엔터티타입, 엔터티집합, 애트리뷰트, 키 COMPANY 데이타베이스에대한초기개념적설계 1 엔티티타입 DEPARTMENT는 Name, Number, Location, Manager, ManagerStartDate 애트리뷰트를가진다 Location은유일한다치애트리뷰트이다 Name과 Number는각부서마다고유하기때문에각각키애트리뷰트로지정할수있다 2 엔티티타입 PROJECT는 Name, Number, Locations, ControllingDepartment 애트리뷰트들을가진다 Name과 Number가각각키애트리뷰트이다 3 엔티티타입 EMPLOYEE는 Name, SSN, Sex, Address, Salary, BirthDate, Department, Supervisor 애트리뷰트들을가진다 사용자가사원 Name의각구성요소 (FirstName, MiddleInitial, LastName) 와 Address의각구성요소를참조할것인지의여부를알기위해서사용자와다시협의해야한다 4 엔티티타입 DEPARTMENT는 Employee, DependentName, Sex, BirthDate, Relationship( 사원과의관계 ) 애트리뷰트들을가진다 13

[ 그림 78] COMPANY 데이타베이스를위한엔티티타입들의초기설계 14

74 관계, 관계타입, 역할, 구조적제약조건 관계타입과관계인스턴스 관계타입 ( 관계집합 ) R은엔티티간의연관들의집합임 : 그림 79에서 WORKS_FOR [ 그림 79] 관계 WORKS_FOR에서관계인스턴스 : 7 개 (r1 ~ r7) EMPLOYEE WORKS_FOR DEPARTMENT r1 e1 e2 e3 e4 e5 e6 e7 r2 r3 r4 r5 r6 r7 : d1 d2 d3 15

74 관계, 관계타입, 역할, 구조적제약조건 관계타입의차수 (degree): 관계에참여하고있는엔티티타입의수 이진 (binary) 차수 : [ 그림 79] 의 WORKS_FOR 관계 3진 (ternary) 차수 : [ 그림 710] 3진관계SUPPLY SUPPLIER s1 s2 PART p1 p2 p3 SUPPLY r1 r2 r3 r4 r5 r6 r7 : PROJECT j1 j2 j3 [ 그림 710] 삼진관계 SUPPLY 16

74 관계, 관계타입, 역할, 구조적제약조건 애트리뷰트로서의관계 : 관계는참여엔티티타입의속성으로볼수도있음예 : (EMPLOYEE 의 Department 또는 DEPARTMENT 의 Employees) 역할과순환적 (recursive) 관계 [ 그림 711] Employee 에서의 EMPLOYEE SUPERVISION 순환적관계 SUPERVISION은상사 (1) 와부하 (2) 의두역할로구분할수있음 e1 e2 e3 e4 e5 e6 E7 1 1 2 2 2 2 2 1 2 1 1 1 r1 r2 r3 r4 r5 r6 17

74 관계, 관계타입, 역할, 구조적제약조건 관계타입에서제약조건 카디날리티비율 : 관계인스턴스에참여하는엔티티의개수의비율 ( 이진관계타입에대한카디날리티비율은 1:1, 1:N, M:N) 참여제약조건 : 한엔티티의존재가관계타입을통해연관되어있는다른엔티티에의존하는지의여부 ( 부분참여와전부참여 ) MANAGER 관계 : EMPLOYEE는부분참여하고, DEPARTMENT는전부참여함 EMPLOYEE e1 e2 MANAGES r1 DEPARTMENT d1 e3 r2 d2 e4 e5 r3 : d3 : e6 e7 18

74 관계, 관계타입, 역할, 구조적제약조건 관계타입의애트리뷰트 1:1, 1:N 관계타입의애트리뷰트 MANAGES의 StartDate [ 그림 712], WORKS_FOR의 StartDate[ 그림 79] M:N 관계타입 WORKS_ON의 Hours [ 그림 713] [ 그림 713] M:N 관계 WORKS_ON WORKS_ON EMPLOYEE e1 e2 e3 e4 19 r1 r2 r3 r4 r5 r6 R7 PROJECT p1 p2 p3 p4

75 약한엔티티타입 (Weak Entity Type) 자신의키애트리뷰트가없는엔티티타입 예 : DEPENDENT 엔티티타입 식별 ( 소유 ) 엔티티타입과식별관계 EMPLOYEE 와 DEPENDENT 에서 EMPLOYEE 가식별엔티티타입이며, 두엔티티타입사이의관계를식별관계라고부름 부분키 동일한소유엔티티와연관된약한엔티티집합내의서브집합 ( 예를들어소유엔티티 employee e1 의 dependents set) 내에서서로를구분할수있는애트리뷰트들의집합 ( 예를들어, Dependentname) 약한엔티티는소유엔티티타입의복합속성으로표현될수도있으나다음의경우에는별도의엔티티타입으로표현하는것이바람직함 (1) 엔티티가많은애트리뷰트들을가지고, (2) 식별관계타입외에다른관계타입들에독립적으로참여하는경우 20

76 COMPANY DB 에대한 ER 설계의개선 그림 78에서관계를나타내는애트리뷰트들을관계타입으로변환하여발전시킴 생성되는관계타입들 1 MANAGES : EMPLOYEE와 DEPARTMENT 사이의 1:1 관계타입 2 WORKS_FOR : DEPARTMENT와 EMPLOYEE 사이의 1:N 관계타입 3 CONTROLS : DEPARTMENT와 PROJECT 사이의 1:N 관계타입 4 SUPERVISION : EMPLOYEE( 상사역할 ) 와 EMPLOYEE( 사원역할 ) 사이의 1:N 관계타입 5 WORKS_ON : EMPLOYEE와 PROJECT 사이의 M:N 관계타입 6 DEPENDENTS_OF :EMPLOYEE와 DEPENDENT 사이의 1:N 관계타입 21

77 ER 다이어그램, 명명에관한규칙, 설계에관한사항 [ 그림 714] ER 다이어그램의표기법요약 Symbol Meaning Symbol Meaning 엔티티타입약한엔티티타입관계타입식별관계타입애트리뷰트 E1 R E2 1 N E1 R E2 복합애트리뷰트 유도된애트리뷰트 E1 이 R 에부분참여 E2 가 R 에전체참여 R 에서 E1:E2 의카디날리티비율이 1:N 키애트리뷰트 다치애트리뷰트 R ( 최소값, 최대값 ) E R 에서 E 의참여에대한구조적제약조건 ( 최소값, 최대값 ) 22

77 ER 다이어그램, 명명에관한규칙, 설계에관한사항 스키마에사용된각구조물에대해가능한한그의미를전달할수있는이름선택 복수보다단수이름선택 일반적으로자연어로기술된요구사항에서명사는엔티티타입이름, 동사는관계타입이름으로해석하는것이도움이됨 ER 다이어그램은왼쪽에서오른쪽, 위에서아래로읽기쉽게작성함 스키마설계는반복해서개선하는작업이필요함 한번에완성하기는쉽지않음 다음 TP에서는 ER 다이어그램의또다른표기법소개 23

Fname Minit Lname Number Name Address WORKS_FOR (4,N) (1,1) employee Name department Locations Ssn Bdate (0,N) supervisor Sex EMPLOYEE SUPERVISION Salary StartDate NumberOfEmployees (0,1) manager (1,N) (1,1) worker MANAGES (0,1) supervisee (0,N) employee Hours WORKS_ON (1,N) project Name DEPATMENT departmentmanaged controllingdepartment (0,N) CONTROLS controlled-(1,1project PROJECT [ 그림 715] 모든역할이름들을포함시키고, 관계에대한구조적제약조건들을 ( 최소값, 최대값 ) 형식으로명시한 COMPANY 스키마의 ER 다이어그램 DEPENDENTS_OF dependent (1,1) DEPENDENT Number Location Name Sex BirthDate Relationship 24

78 3 차이상의관계타입 관계타입의차수 : 참여하는엔터티타입의수 이진관계, 3 진관계등 3 진관계예제 : 부품공급 (SUPPLY) (s1, p1, j1) 관계표현 (s1, p1) (p1, j1) (j1,p1) 관계가있어도 (s1,p1,j1) 관계를표현하지못할수도있음 25

78 3 차이상의관계타입 3 진관계예제 : 부품공급 (SUPPLY) ( 계속 ) 이진관계만허용하는시스템의경우, 3개의이진관계를갖는약한엔터티타입으로 3진관계를표현할수있음 26

78 3 차이상의관계타입 3 진관계예제 : 강좌개설 (OFFERS) % OFFERS 내에 (i,s,c) 인스턴스가존재할경우, 세개의이진관계에는 (i,s,), (s,c), (c,i) 가존재해야한다 % 하지만, 세이진관계에 (i,s,), (s,c), (c,i) 가있어도 OFFERS 내에 (i,s,c) 인스턴스가없을수도있다 % CAN_TEACH가 1:1 관계이면, 세개의 2진관계에의해 3진관계 ( 즉, OFFERS) 가유도가능하므로 OFFERS를삭제해도됨 27

78 3 차이상의관계타입 3 진식별관계타입을갖는약한엔터티타입 INTERVIEW 는 2 개의소유엔터티타입을가짐 28

79 요약 엔티티 - 관계 (ER) 모델을사용한모델링개념 엔티티 ( 개체 ) 와관계의정의 스키마레벨에서 ER 모델개념 관계타입의구조적제약조건 ER 다이어그램 29