PowerPoint Presentation

Similar documents
<4D F736F F F696E74202D E DB0FCB0E820BBE7BBF3BFA120C0C7C7D120B0FCB0E820B5A5C0CCC5CDBAA3C0CCBDBA20BCB3B0E8>

슬라이드 제목 없음

PowerPoint Presentation

<4D F736F F F696E74202D E20B0FCB0E820B5A5C0CCC5CD20B8F0B5A8B0FA20B0FCB0E820B5A5C0CCC5CDBAA3C0CCBDBA20C1A6BEE020C1B6B0C7>

PowerPoint 프레젠테이션

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

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

<C1A62038B0AD20B0ADC0C7B3EBC6AE2E687770>

슬라이드 제목 없음

The Relational Model

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

Microsoft PowerPoint - QVIZMVUMWURI.pptx

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

슬라이드 제목 없음

PowerPoint Presentation

Microsoft PowerPoint 관계 DB의 FD와 정규화

슬라이드 제목 없음

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

PowerPoint 프레젠테이션

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

untitled

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

PowerPoint Presentation

InsertColumnNonNullableError(#colName) 에해당하는메시지출력 존재하지않는컬럼에값을삽입하려고할경우, InsertColumnExistenceError(#colName) 에해당하는메시지출력 실행결과가 primary key 제약에위배된다면, Ins

슬라이드 제목 없음

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

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

<4D F736F F F696E74202D20BFC0B6F3C5AC2D38C0E52DBAE4BFCD20BDC3BDBAC5DB20C4ABC5BBB7CEB1D72DBFC0B6F3C5AC2E BC8A3C8AF20B8F0B

<4D F736F F F696E74202D E20B0FCB0E BCB3B0E820BECBB0EDB8AEC1F2B0FA20C3DFB0A1C0FB20C1A4B1D4C7FC>

12. 데이타베이스 설계

VENUS Express 사용자 매뉴얼

Microsoft PowerPoint - 27.pptx

슬라이드 제목 없음

3 장. 관계데이터모델 관계모델 (relational model) 의기초 E/R 다이어그램에서관계설계로의변환서브클래스구조를릴레이션으로변환함수적종속성 (functional dependency) 함수적종속성에관한규칙들관계데이터베이스스키마설계다중값종속성 (multivalue

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

Object Oriented Analyis & Design Training Agenda

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

<C1A4BAB8C3B3B8AE5FBBEABEF7B1E2BBE75FC7CAB1E25F E687770>

< B3E220C1A4BAB8C3B3B8AEBBEABEF7B1E2BBE B3E2B0A320B1E2C3E2B9AEC1A6C0BAC7E02E687770>

Database Applications - 멀티미디어 데이터베이스 – 제6장 텍스트 색인과 검색

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

PowerPoint Template

강의 개요

DBMS & SQL Server Installation Database Laboratory

슬라이드 제목 없음

PowerPoint 프레젠테이션

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

PowerPoint 프레젠테이션

6장. SQL

JAVA PROGRAMMING 실습 08.다형성

Application Programming for Relational Databases

PowerPoint Presentation

Microsoft PowerPoint - ch07_데이터베이스 언어 SQL.pptx

Microsoft PowerPoint SQL-99

6 장. 데이터베이스언어 SQL SQL 에서의단순질의하나이상의릴레이션을포함하는질의부질의 (subquery) 릴레이션전체를다루는연산데이터베이스변경 SQL 에서릴레이션스키마의정의뷰정의 2

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

TITLE

fl 2

게임 기획서 표준양식 연구보고서

PowerPoint 프레젠테이션

Microsoft PowerPoint - 5 [호환 모드]

SQL

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

<4D F736F F F696E74202D20C1A4BAB8C3B3B8AEB1E2BBE72DC7CAB1E2B1B3C0E B3E231C8B8292E707074>

<4D F736F F F696E74202D20C1A4BAB8C3B3B8AEBBEABEF7B1E2BBE72DC7CAB1E2B1B3C0E B3E231C8B8292E707074>

- JPA를사용하는경우의스프링설정파일에다음을기술한다. <bean id="entitymanagerfactory" class="org.springframework.orm.jpa.localentitymanagerfactorybean" p:persistenceunitname=

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

Windows 8에서 BioStar 1 설치하기

chap 5: Trees

PowerPoint Presentation

Microsoft PowerPoint - chap06-2pointer.ppt

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

Microsoft PowerPoint - 26.pptx

Microsoft PowerPoint - Database.ppt

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

A Hierarchical Approach to Interactive Motion Editing for Human-like Figures

01_피부과Part-01

PowerPoint 프레젠테이션

Microsoft PowerPoint - a10.ppt [호환 모드]

Database Applications - 멀티미디어 데이터베이스 – 제6장 텍스트 색인과 검색

관광스토리텔링2_내지

Microsoft PowerPoint - 10Àå.ppt

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

6 강남구 청담지구 청담동 46, 삼성동 52 일대 46,592-46,592 7 강남구 대치지구 대치동 922번지 일대 58,440-58,440 8 강남구 개포지구 개포동 157일대 20,070-20,070 9 강남구 개포지구중심 포이동 238 일대 25,070-25,

27집최종10.22

황룡사 복원 기본계획 Ⅵ. 사역 및 주변 정비계획 가. 사역주변 정비구상 문화유적지구 조성 1. 정비방향의 설정 황룡사 복원과 함께 주변 임해전지(안압지) 海殿址(雁鴨池)와 분황사 등의 문화유적과 네트워크로 연계되는 종합적 정비계획안을 수립한다. 주차장과 광장 등 주변

PowerPoint Presentation

열거형 교차형 전개형 상승형 외주형 회전형 도해패턴 계층형 구분형 확산형 합류형 대비형 상관형 (C) 2010, BENESO All Rights Reserved 2

C++ Programming

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

PowerPoint 프레젠테이션

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

PostgreSQL 2 Uniersity of California at Berkeley ( ) 에서개발된관계형데이터베이스서버인 Ingres 가시초 ( 후에 Computer Associates 에인수됨 ) 1

snu.pdf

199

b

Microsoft PowerPoint - C++ 5 .pptx

<C0FCB0F8415FC1A4BAB8C4C4C7BBC5CD283236C0CF3230BDC33335BAD0292E687770>

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

Microsoft PowerPoint - chap03-변수와데이터형.pptx

Transcription:

4. 관계데이타모델

이장의주요내용 관계모델소개 관계모델의개념 릴레이션, 릴레이션스키마, 릴레이션상태 관계모델의스키마기반제약조건들 도메인제약조건 키제약조건 엔티티무결성제약조건 참조무결성제약조건 ER 모델을관계모델로변환 2

관계모델소개 정보시스템의논리적스키마 (Logical Schema) 을정의하기위해사용 관계데이타베이스시스템에직접구현될수있도록데이타베이스구조를정의하는방법을제공 관계데이터모델의장점 대수연산의지원을받는탄탄한수학적기초를가짐 사용자에게단순성을제공 릴레이션의생성과조작을위한연산인관계대수 (relation algebra) 의지원을받음 (6 장 ) 3

관계모델의개념 : 릴레이션 릴레이션 (relation) 개체를표현하기위한데이터구조 2 차원테이블로표현 행 : 개체를표현. 관련된데이터값들의모임. 튜플 (tuple) 이라고부름 열 : 각행의값들의의미를해석하는데사용. 애트리뷰트 (attribute) 라고부름 데이타베이스는릴레이션들의모임 4

관계모델의개념 : 릴레이션스키마 한개의릴레이션스키마는하나의개체또는관계성클래스를표현 개체들을표현하는데사용되는테이블의구조정의 릴레이션내포 (intension) 이라고도함 R(A 1, A 2,..., A n ) 로표기 R : 릴레이션이름 A 1, A 2,..., A n : 애트리뷰트 예 ) MOVIE(movieId, title, genre, length, rating) 5

관계모델의개념 : 릴레이션상태 한시점에릴레이션 R 에포함되어있는튜플 (tuple) 들의집합 한개의튜플은한개체가가지는애트리뷰트값들의집합 릴레이션은튜플들의집합이므로, 각튜플은유일해야함 릴레이션외포 (extension) 이라고도함 6

릴레이션 MOVIE 의예 INTEGER STRING STRING STRING STRING 도메인 릴레이션이름 애트리뷰트들 튜플들 MOVIE movieid title genre length rating 101 The Thirty-nine Steps 145 Lady and the Tramp mystery 101 PG animated comedy 93 G 90987 Elizabeth costume 123 PG-13 drama 99787 Animal House comedy 87 PG-13 릴레이션구조또는스키마 릴레이션상태또는내용 123 Annie Hall romantic comedy 110 PG-13 7

무결성제약조건 Integrity constraints : IC 데이타베이스의인스턴스에저장될수있는데이터를제한함 데이타베이스스키마에명시되며, 그스키마의모든데이타베이스상태는이를만족해야함 무결성제약조건은서로다른시점에명시되며시행됨 DBA 나최종사용자가데이타베이스스키마를정의할때, IC 를명시 데이타베이스응용이실행될때, DBMS 는명시된 IC 를만족하는인스턴스들만데이타베이스에저장하도록함 8

관계모델의스키마기반제약조건들 도메인제약조건 널제약조건 ( 이전장에서설명하였음 ) 키제약조건 (Key Constraints) 엔티티무결성제약조건 (Entity Integrity Constraints) 참조무결성제약조건 (Referential Integrity Constraints) 9

도메인제약조건 정의 각각의투플내에서각각의애트리뷰트 A 의값이반드시 A 의도메인 dom(a) 에속하는원자값이어야한다. 도메인의데이터타입들 전형적인데이터타입들 예 ) 정수와실수, 논리형, 문자, 고정길이문자열, 가변길이문자열, 날짜 어떤데이터타입의전체값의일부범위를지정 예 ) 15 와 80 사이의정수 모든가능한값을명시적으로나열 예 ) 학과명이나학과코드를나타내는모든문자열 10

키제약조건 슈퍼키 (Superkey) 릴레이션 R 에대한슈퍼키 SK 는다음조건을가지는 R 의애트리뷰트들의집합임 유효한릴레이션상태 r(r) 에서서로다른튜플들은 SK 에대해같은값을가지지않음 키 (Key) : 릴레이션 R 에대한키의조건 1. 서로다른두투플은동일한키애트리뷰트값을가질수없음 2. 키는최소의슈퍼키 (minimal superkey) 임 예 ) STUDENT 릴레이션 {Ssn} : 키 {Ssn, Name, Age}, {Ssn, Name}, {Ssn, Age}, {Ssn} : 슈퍼키 11

키제약조건 만일릴레이션스키마가하나이상의키를가질경우, 각키를후보키 (candidate key) 라함 후보키들중에하나를기본키로지정함 기본키 (Primary key) 투플들을식별할수있는후보키 기본키를구성하는애트리뷰트들은밑줄을그어표시 다른후보키는유일키 (unique key) 라함 12

엔티티무결성제약조건과참조무결성제약조건 엔티티무결성제약조건 어떠한기본키값도널값이될수없음 이유 : 기본키는한릴레이션내의각투플을식별하는데사용되기때문에기본키값이널값이되면투플들을식별할수없음 참조무결성제약조건 두릴레이션사이에명시되는제약조건 한릴레이션에있는투플이다른릴레이션에있는투플을참조하려면반드시참조되는투플이그릴레이션내에존재해야함 외래키 (foreign key) 는참조무결성제약조건을만족해야함 13

외래키 릴레이션스키마 R1 의어떤애트리뷰트들의집합 FK 가아래규칙을만족하면 FK 는릴레이션 R2 를참조하는 R1 의외래키임 R1 : 참조한릴레이션, R2 : 참조된릴레이션 1. FK 의애트리뷰트는 R2 의기본키 PK 의애트리뷰트와동일한도메인을가짐 2. 현재상태 r1(r1) 의한투플 t1 내의 FK 값은현재상태 r2(r2) 의어떤투플 t2 내의 PK 값과일치하거나널값을가져야함 각외래키로부터그것을참조하는릴레이션까지화살표를그려서표현 참조되는릴레이션의기본키를화살표의머리가가리키도록함 14

Movie movieid title genre length rating 외래키 VideoTape videoid dateacquired movieid storeid 101 1/25/98 101 3 111 2/5/97 123 3 112 12/31/95 123 5 114 4/5/98 189 5 145 5/12/95 145 5 < 참조하는릴레이션 > VideoTape 101 The Thirty-nine Steps 145 Lady and the Tramp Animated comedy 450 Elizabeth Costume drama Mystery 101 PG 93 G 123 PG-13 189 Animal House Comedy 87 PG-13 123 Annie Hall Romantic comedy Store 110 PG-13 stordid street City manager 3 2010 Liberty Rd Apopka 145-09-0967 5 1004 N. Monroe St Apopka 588-99-0093 < 참조된릴레이션 > videoid dateacquired movieid storeid Movie movieid title genre length Store rating <BigHit Video 스키마다이어그램에표시된참조무결성제약조건의예 > storeid street city state zipcode manager 15

ER 모델을릴레이션스키마로변환 변환단계 1. ER 모델의각개체클래스에대해릴레이션스키마생성 2. 생성한스키마에애트리뷰트추가 3. 키애트리뷰트지정 4. ER 모델의모든관계성을어떻게표현할것인지선택 우선위의변환단계에따라 ER 모델을충실히표현하는릴레이션스키마생성 데이타베이스를좀더효율적이고, 관리하기쉽고, 수정하기편하게하기위해릴레이션스키마에대해다양한변환과정적용 (5 장정규화과정 ) 16

개체클래스의릴레이션스키마로표현 1. 규칙 1 : ER 모델의강한개체클래스각각에대해같은이름으로릴레이션스키마를생성한다. 2. 규칙 2 : 강한개체클래스의단순애트리뷰트에대해릴레이션스키마에서같은이름으로애트리뷰트를생성한다. 3. 규칙 3 : 강한개체클래스의키들중에하나를릴레이션스키마의키로선택한다. 선택된키가여러개의단순애트리뷰트들로구성되어있다면, 릴레이션스키마의키는애트리뷰트들의집합이된다. 17

Movie 클래스변환예 movieid title Movie genre length rating 스키마 : Movie (movieid, title, genre, length, rating) movieid title genre length rating 101 The Thirty-nine Steps mystery 101 PG 145 Lady and the Tramp animated 93 G comedy 90987 Elizabeth costume drama 123 PG-13 99787 Animal House comedy 87 PG-13 123 Annie Hall romantic comedy 110 PG-13 그림 4-1 Movie 클래스에대한스키마정의와예제테이블 18

복합, 다중값, 파생애트리뷰트의표현 lastname firstname accountid balance 다중값애트리뷰트 otherusers Customer numberrentals address 복합애트리뷰트 파생애트리뷰트 street city state zipcode 관계모델에서사용할수있는도메인들은더이상나눌수없는, 즉원자값 (Atomic value) 을가져야함 OtherUsers 와 address 가원자값이아닌이유 특정도시또는우편번호를가지는고객을찾기위해 특정개인이고객계정의다른사용자리스트에나타나는지를확인하기 위해 19

복합애트리뷰트 -1/2 복합애트리뷰트은이름과타입을가지는여러개의애트리뷰트들로구성 ( 예 :address) 규칙 4 : 강한개체클래스의복합애트리뷰트각각에대해, 릴레이션스키마의복합애트리뷰트의각구성필드에대해하나씩의애트리뷰트들을생성한다. 20

복합애트리뷰트 - 2/2 스키마 : Customer(accountId, lastname, firstname, street, city, state, zipcode, balance) 테이블 : accountid lastname firstname street city state zipcode balance 101 Block Jane 1010 Main St. 102 Hamilton Cherry 3230 Dade St. 103 Harrison Kate 103 Dodd Hall 104 Breaux Carroll 76 Main St. Apopka FL 30458 0.00 Dade City FL 30555 4.47 Apopka FL 30457 30.57 Apopka FL 30458 34.58 그림 4-2 Customer 클래스에대한스키마정의와예제테이블 21

다중값애트리뷰트 단일개체에대한애트리뷰트값이구성요소값들의집합으로이루어지기때문에원자성을갖지못함 ( 예 :OtherUsers) 방법 1 : 한개의 otheruser 애트리뷰트를갖게하면서 otheruser 에나타나는사용자마다새로운행생성 22

다중값애트리뷰트 : 방법 1 의예 스키마 : Customer(accountId, lastname, firstname, street, city, state, zipcode, otheruser) 테이블 : accountid lastname firstname street city state zipcode otheruser 104 Breaux Carroll 76 Main St. Apopka FL 30458 Judy Breaux 104 Breaux Carroll 76 Main St. Apopka FL 30458 Cyrus Lambeaux 104 Breaux Carroll 76 Main St. Apopka FL 30458 Jean Deaux 그림 4-3 otheruser 애트리뷰트를가지는 Customer 클래스에대한스키마정의와예제테이블 : 다른모든애트리뷰트는중복됨 23

다중값애트리뷰트 : 방법 1 의문제점 문제점 : 기본적인정보시스템의원칙에위배 1. 모든데이터모델은그것이표현하는실제상황들과비슷해야한다. 그러나, 3 개의개체 ( 테이블의행들 ) 는단일실제고객을표현함 2. 데이터모델들이값들의중복을최소화해야한다. 그러나, 거의대부분의정보가중복되어있음 24

다중값애트리뷰트 : 방법 2 1/3 방법 2 : ER 모델에서 OtherUser 개체클래스생성하고 Customer 클래스와관계성설정 lastname firstname accountid Customer 1 is a part of 0/M OtherUser numberrentals address otheruser street city state zipcode 25

다중값애트리뷰트 : 방법 2-2/3 스키마 : OtherUser(accountId, otheruser) 테이블 : accountid OtherUser 104 Judy Breaux 104 Cyrus Lambeaux 104 Jean Deaux 그림 4-5 OtherUser 클래스에대한스키마정의와예제테이블 26

다중값애트리뷰트 : 방법 2-3/3 규칙 14 개체클래스 C 의다중값애트리뷰트 M 각각에대하여, 새로운릴레이션스키마 M 을정의 애트리뷰트 M 의필드들을새로운스키마에추가 C 의나머지애트리뷰트들을포함하는스키마의키애트리뷰트들을외래키로 M 에추가 새로운스키마의키는그것이가지는모든애트리뷰트들의조합이되도록선언 27

관계성을애트리뷰트로표현 관계모델은관계성표현을위해특별한데이타구조를지원하지않음. 테이블과애트리뷰트만을가지고관계성표현 관계모델에서모든릴레이션스키마는한개이상의애트리뷰트로구성된키를가져야함 관계모델은관계성을표현하기위해이키들을이용 1- 대 - 다, 1- 대 -1 관계성표현에적용 28

1- 대 - 다관계성표현 - 1/3 1 Is a M M Is a 1 Movie Copy Videotape Located Store of In MovieId videoid dateacquired storeid 스키마 : Videotape(videoId, dateacquired, movieid, storeid) movieid : Is a copy of 관계타입을표현. 외래키 storeid : Is a Located In 관계타입을표현. 외래키 29

1- 대 - 다관계성표현 - 2/3 테이블 videoid dateacquired movieid storeid 101 1/25/98 101 3 111 2/5/97 123 3 112 12/31/95 123 5 113 4/5/98 123 5 114 4/5/98 189 5 123 3/25/86 123 3 145 5/12/95 145 5 77564 4/29/91 189 3 90987 3/25/99 450 3 99787 10/10/97 987 5 30

1- 대 - 다관계성표현 - 3/3 데이타베이스시스템은참조무결성제약조건을적용하는책임을짐 외래키의값은반드시참조하는기본키의어떤값과같든지아니면 null 이어야한다 즉, 기본키에없는값은가질수없다 규칙 5 : 클래스 S 와 T 가존재하고, 클래스간의관계성타입 R 의카디널리티비율이 1- 대 - 다일경우, 클래스 S 의키애트리뷰트들을클래스 T 에외래키로추가 대 -1 인스키마에대해외래키애트리뷰트를추가 규칙 6 : 클래스 T 에관계성타입 R 의애트리뷰트추가 31

1- 대 -1 관계성표현 1- 대 -1 관계타입에서관련된둘중의어느한쪽스키마에외래키속성을더함 worker WorksIn Employee M 1 M 1 Store manager Manages 32

Store 와 Employee 간의 Manages 관계표현방법 `1 스키마 : Store(storeId, street, city, state, zipcode, manager) 테이블 : storeid street city state zipcode manager 3 2010 Liberty Rd Apopka FL 34505 145-09-0967 5 1004 N. Monroe St Apopka FL 34506 588-99-0093 외래키 manager 가 Store 스키마에포함 33

Store 와 Employee 간의 Manages 관계표현방법 2 스키마 : Employee(ssn, lastname, firstname, managed) 테이블 : ssn lastname firstname managed 145-09-0967 Uno Jane 3 245-11-4554 Toulouse Jennifer 376-77-0099 Threat Ayisha 479-98-0098 Fortune Bruce 588-99-0093 Fivozinsky Bruce 5 외래키 manager 가 Employee 스키마에포함 모든상점에는관리자가있으나, 대부분직원들은관리자가아님. 그러므로, Employee 테이블의많은행들이 manager 값으로 null 을가질수있음 34

1- 대 -1 관계성표현규칙 Tip : Null 값을갖지않는쪽, 즉참여제약조건이 Total 인쪽에외래키를포함시키는것이좋음 규칙 7 클래스 S 와 T 가존재하고, 클래스간의관계성타입 R 의카디널리티비율이 1- 대 -1 인경우, 어느한쪽의클래스선정. 이때전부참여제약조건을갖는개체클래스는선택하는것이바람직함. 규칙 4 적용, 규칙 6 적용 35

개체합병을통한관계성표현 관계된개체클래스들이관계성을통해하나의릴레이션으로합병 개체클래스 Employee 와 Store 가 Manages 관계성을통해하나의 EmployeeStore 릴레이션으로합병 스키마 : EmployeeStore(ssn, lastname, firstname, storeid, storestreet, storecity, storestate, StoreZipcode) 36

Employee 와 Store 를합병한 EmployeeStore 스키마예 테이블 : ssn last Name first Name storeid store Street store City store State store Zipcode 145-09-0967 Uno Jane 3 2010 Liberty Rd Apopka FL 34505 245-11-4554 Toulouse Jennifer 376-77-0099 Threat Ayisha 479-98-0098 Fortune Bruce 588-99-0093 Fivozinsky Bruce 5 1004 N. Monroe St Apopka FL 34506 문제점 개체클래스들사이의구분이제거되어관계성을명시적으로표현하지못함 어떤관계성을통해연관되어있는지명확히표현할수없음 37

관계성을테이블로표현 다 - 대 - 다관계성타입은스키마에외래키를추가하는방법으로표현할수없음. 이유 : 한개체의외래키는관계된각개체의값들의집합을가져야하기때문 다 - 대 - 다관계성타입은원래의스키마와는분리된별도의릴레이션스키마로표현되어야함 이스키마의애트리뷰트로는관계된개체타입들의키와관계성타입자신의애트리뷰트가옴 38

다 - 대 - 다관계성표현예 worker WorksIn Employee M M Store 1 1 manager Manages 스키마 : WorksIn(ssn, storeid) 테이블 : ssn storeid 358-44-7865 3 579-98-8778 5 358-44-7865 5 39

다 - 대 - 다관계성표현규칙 규칙 8: 클래스 S 와 T 가존재하고, 이클래스간의관계성타입 R 의카디널리티비율이다 - 대 - 다일경우에새로운릴레이션스키마 R 생성 S 와 T 의키를외래키로써 R 에추가 규칙 6 적용 40

약한개체클래스의표현 약한개체클래스는자신의유일키애트리뷰트가없음 키를위한추가적인애트리뷰트를소유자개체타입으로부터가져와약한개체클래스를위한스키마를만듦 약한개체클래스 소유자개체클래스 Customer 1 Has M Rental 1 Has 1 Video datedue cost 식별관계클래스 daterented 41

약한개체클래스표현예 : Rental 스키마 스키마 : Rental(videoId, datedue, daterented, cost, accountid) 테이블 : videoid daterented datedue cost accountid 101 1/3/02 1/4/02 $1.59 103 113 2/22/02 2/25/02 $3.00 101 114 2/22/02 2/25/02 $3.00 101 123 12/1/01 12/31/01 $10.99 103 42

약한개체클래스표현예 :TimeCard 스키마 정의관계클래스 약한개체클래스 Employee 1 Has M M 1 TimeCard Has Store date paid 구별자 starttime endtime 43

TimeCard 개체클래스의스키마와테이블 스키마 : TimeCard(ssn, date, starttime, endtime,storeid,paid) 테이블 : ssn date starttime endtime storeid paid 145-09-0967 01/14/99 8:15 12:00 3 yes 245-11-4554 01/14/99 8:15 12:00 3 yes 376-77-0099 02/23/99 14:00 22:00 5 yes 145-09-0967 01/16/99 8:15 12:00 3 yes 376-77-0099 01/03/99 10:00 14:00 5 yes 376-77-0099 01/03/99 15:00 19:00 5 yes 44

약한개체클래스표현규칙 규칙 9: 각약한개체클래스 W 에대하여, 새로운릴레이션스키마생성 식별관계성과관련된강한개체클래스각각에대해서이클래스의키애트리뷰트들을새로생성한스키마에외래키애트리뷰트들로추가 추가된외래키애트리뷰트들과약한개체클래스의부분키애트리뷰트들의조합으로스키마의키선언 규칙 2, 4 적용 45