• 검색 결과가 없습니다.

3. Employee와 Project 관계 (n-m 관계)는 별도의 테이블 (관계 테이블)로 표현

N/A
N/A
Protected

Academic year: 2022

Share "3. Employee와 Project 관계 (n-m 관계)는 별도의 테이블 (관계 테이블)로 표현"

Copied!
12
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY SUPERSSN DNO PNO John B Smith 123456789 09-Jan-55 731 Fondren, Houston, TX M 30000 333445555 5 1, 2 Franklin T Wong 333445555 08-Dec-45 638 Voss, Houston, TX M 40000 888665555 5 2, 3, 10, 20 Alicia J Zelaya 999887777 19-Jul-58 3321 Castle, Spring, TX F 25000 987654321 4 30, 10 Jennifer S Wallace 987654321 20-Jun-31 291 Berry, Bellaire, TX F 43000 888665555 4

Ramesh K Narayn 666884444 15-Sep-52 975 Fire Oak, Humble, TX M 38000 333445555 5

Employee

3. Employee와 Project 관계를 필드(PNO 혹은 EMPs)로 표현하면 어떤 문제 가 발생하는가 ? => 집합값 속성 => 별도의 테이블로 관계를 저장함

PNAME PNUMBER PLOCATION DNUM EMPs

ProductX 1 Bellaire 5 123456789, 453453453

ProductY 2 Sugarland 5 123456789, 453453453, 333445555

ProductZ 3 Houston 5

Computerization 10 Stafford 4

Reorganization 20 Houston 1

Ramesh K Narayn 666884444 15-Sep-52 975 Fire Oak, Humble, TX M 38000 333445555 5 Joyce A English 453453453 31-Jul-62 5631 Rice, Houston, TX F 25000 333445555 5 Ahmad V Jabbar 987987987 29-Mar-59 980 Dallas, Houston, TX M 25000 987654321 4 James E Borg 888665555 10-Nov-27 450 Stone, Houston, T M 55000 null 1

(2)

FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY SUPERSSN DNO John B Smith 123456789 09-Jan-55 731 Fondren, Houston, TX M 30000 333445555 5 Franklin T Wong 333445555 08-Dec-45 638 Voss, Houston, TX M 40000 888665555 5 Alicia J Zelaya 999887777 19-Jul-58 3321 Castle, Spring, TX F 25000 987654321 4 Jennifer S Wallace 987654321 20-Jun-31 291 Berry, Bellaire, TX F 43000 888665555 4 Ramesh K Narayn 666884444 15-Sep-52 975 Fire Oak, Humble, TX M 38000 333445555 5

Employee

123456789ESSN PNO1 HOURS32.5 123456789 2 7.5

666884444 3 40

453453453 1 20

453453453 2 20

333445555 2 10

333445555 3 10

333445555 10 10 333445555 20 10 999887777 30 30

Works-On

3. Employee와 Project 관계 (n-m 관계)는 별도의 테이블 (관계 테이블)로 표현

PNAME PNUMBER PLOCATION DNUM

ProductX 1 Bellaire 5

ProductY 2 Sugarland 5

ProductZ 3 Houston 5

Computerization 10 Stafford 4

Reorganization 20 Houston 1

Newbenefits 30 Stafford 4

Project

Joyce A English 453453453 31-Jul-62 5631 Rice, Houston, TX F 25000 333445555 5 Ahmad V Jabbar 987987987 29-Mar-59 980 Dallas, Houston, TX M 25000 987654321 4 James E Borg 888665555 10-Nov-27 450 Stone, Houston, T M 55000 null 1

999887777 30 30 999887777 10 10 987987987 10 35

987987987 30 5

987654321 30 20 987654321 20 15 888665555 20 null

즉,

N-1 관계는 N-side 테이블의 필드로 표현하고,

N-M 관계는 별도의 테이블로 표현한다.

(3)

요약 - 관계의 표현

- Employee & Project 는 N-M 관계이며, 관계정보를 별도의 테이블(Works_On)에

e1

r1 r2 r3

p1 p2

EMPLOYEE

WORKS_ON

PROJECT

e2 e3 e4 . . .

r3 r4 r5 r6 R7

..

p2

p3

p4

.

.

(4)

r1 r2 r3 r4 r5 r6 s1

s2 . . .

p1 p2 p3

j1 j2 j3 . . .

SUPPLIER

PART

PROJECT SUPPLY

4. 3 진관계의 표현 : 별도의 테이블로 표현 (관계 테이블)

2진 관계와의 차이점 ?

r7 : p3

. . . Supplier

sname address phone 홍길동 대전 010-2334-3456 신윤복 서울 010-3456-4455

Part

pname weight price

볼트 100 30

너트 200 50

Project

SPJ

4대강사업 3000금강

신공항건설 2500가덕도

DB 구축 456충북대

Supply

sname pname jname qty

홍길동 볼트 4대강사업 5000

홍길동 볼트 DB구축 400

신윤복 너트 4대강사업 3000

신윤복 볼트 4대강사업 400

신윤복 너트 DB구축 4000

관계속성

(5)

DNUMBER DLOCATION

1 Houston

Dept_Locations (set value)

Department

DNAME DNUMBER MGRSSN MGRSTARTDATE Research 5 333445555 22-May-78 Administration 4 987654321 01-Jan-85

Headquarters 1 888665555 19-Jun-71

5. 집합값 속성의 표현

- 테이블의 각 cell 에는 단일값만 표현할 수 있음

- 집합값 속성은 두 개의 테이블로 분리하여 표현함으로써 집합값 속성을 제거함

4 Stafford

5 Bellaire

5 Sugarland

5 Houston

Research 5 333445555 22-May-78

{ Bellaire, Sugarland, Houston }

location

(6)

FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY SUPERSSN DNO John B Smith 123456789 09-Jan-55 731 Fondren, Houston, TX M 30000 333445555 5 Franklin T Wong 333445555 08-Dec-45 638 Voss, Houston, TX M 40000 888665555 5 Alicia J Zelaya 999887777 19-Jul-58 3321 Castle, Spring, TX F 25000 987654321 4 Jennifer S Wallace 987654321 20-Jun-31 291 Berry, Bellaire, TX F 43000 888665555 4 Ramesh K Narayn 666884444 15-Sep-52 975 Fire Oak, Humble, TX M 38000 333445555 5 Joyce A English 453453453 31-Jul-62 5631 Rice, Houston, TX F 25000 333445555 5

Employee

6. Weak Entity Type

Dependent

ESSN DEPENDENT

_NAME SEX BDATE RELATIONSHIP

333445555 Alice F 05-Apr-76 DAUGHTER 333445555 Theodore M 25-Oct-73 SON

333445555 Joy F 03-May-48 SPOUSE 987654321 Abner M 29-Feb-32 SPOUSE 123456789 Michael M 01-Jan-78 SON

123456789 Allice F 32-DEC-78 DAUGHTER 123456789 Elizabeth F 05-May-57 SPOUSE

Ahmad V Jabbar 987987987 29-Mar-59 980 Dallas, Houston, TX M 25000 987654321 4 James E Borg 888665555 10-Nov-27 450 Stone, Houston, T M 55000 null 1

Dependent는 Employee와 함께

생성되고 삭제됨 (Weak entity)

(7)

FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY SUPERSSN DNO

EMPLOYEE

DNAME DNUMBER MGRSSN MGRSTARTDATE

DEPARTMENT

DNUMBER DLOCATION

DEPT_LOCATION

최종 설계된 관계형 데이터베이스

[그림 4.5] 기본키에 밑줄을 그은 COMPANY 관계 데이터베이스 스키마

PNAME PNUMBER PLOCATION DNUM

PROJECT

ESSN PNO HOURS

WORKS_ON

ESSN DEPARTMENT_NAME SEX

DEPENDENT

BDATE RELATIONSHIP

(8)

FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY SUPERSSN DNO EMPLOYEE

DNAME DNUMBER MGRSSN MGRSTARTDATE DEPARTMENT

DNUMBER DLOCATION DEPT_LOCATION

PROJECT

외래키는 동일한 릴레이션의 애트리뷰트를 참조할 수도 있음

[그림 4.7] COMPANY 데이터베이스 스키마에 표시된 참조 무결성 제약 조건들

PNAME PNUMBER PLOCATION DNUM PROJECT

ESSN PNO HOURS WORKS_ON

ESSN DEPARTMENT_NAME SEX DEPENDENT

BDATE RELATIONSHIP

(9)

제약조건은 모든 릴레이션 인스턴스들이 만족해야 하는 조건임

주요 제약조건

도메인 제약 조건(domain constraints)

키 제약조건(key constraints) : 기본키, 후보키

엔티티 무결성 제약조건(entity integrity constraints) : 기본키는 널값을 불허함

관계 제약조건

참조 무결성 제약조건(referential integrity constraints)

Department

DNAME DNUMBER MGRSSN MGRSTARTDATE Research 5

333445555

22-May-78 Administration 4

987654321

01-Jan-85 Headquarters 1

888665555

19-Jun-71

FNAME MINIT LNAME

SSN

BDATE

John B Smith 123456789 09-Jan-55

Franklin T Wong 333445555 08-Dec-45 Alicia J Zelaya 999887777 19-Jul-58 Jennifer S Wallace 987654321 20-Jun-31

Employee

Date 타입 유일한 값

(키 제약조건)

참조무결성 제약조건

외래키 주키

(10)

• 릴레이션에 대한 기본 갱신 연산들

– 삽입, 삭제, 수정

• 갱신 연산을 실행하는 경우 스키마에 정의된 무결성 제약 조건을 위반하지 않아야 함

• 삽입연산 – 네가지 제약 조건을 위반할 수 있음

– 삽입되는 투플 t에서 애트리뷰트의 값이 도메인에 없으

관계 제약조건

– 삽입되는 투플 t에서 애트리뷰트의 값이 도메인에 없으 면 도메인 제약 조건을 위반함

– t에서 기본 키의 값이 다른 투플에서 이미 존재한다면 키 제약 조건을 위반하며, 널이면 엔티티 제약 조건을 위반 함

– t에서 외래 키의 값이 참조되는 릴레이션의 키 값으로 존 재하지 않는다면 참조 제약 조건을 위반함

• 제약 조건을 위반하면 그 삽입을 거부하거나 그 위반

사실을 사용자에게 알려야 함

(11)

• 삭제연산

– 투플이 삭제되는 경우 다른 테이블에서 참조하고 있는지 검사 하여 그렇지 않는 경우에만 삭제함 (참조 무결성)

• 삭제 연산이 참조 무결성 제약 조건을 위반하는 경우 취할 수 있는 세가지 옵션

– 삭제를 거부

관계 제약조건

– 삭제를 거부

– 삭제되는 투플을 참조하는 투플들까지 모두 삭제 (연쇄 삭제) – 삭제되는 투플을 참조하는 투플에서 외래키 값을 널로 바꾸거

나 다른 유효한 투플을 참조하도록 변경

• 위의 세가지 옵션 중 사용자가 응용의 특성에 적합한 것을 선택하도록 하는 것이 바람직함

(12)

• 갱신연산

– 갱신 연산은 기본적으로 “삭제 후 삽입” 연산 으로 간주할 수 있으므로 삽입과 삭제시의 관계 제약조건

으로 간주할 수 있으므로 삽입과 삭제시의 문제점이 모두 나타남

– 기본 키나 외래키가 아닌 애트리뷰트 값의

변경은 문제가 없음

참조

관련 문서

붕어빵 틀은 클래스이며, 이 틀의 형태로 구워진 붕어빵은 바로 객 체입니다.. 붕어빵은 틀의 모양대로 만들어지지만

일차함수와

그림의 원판을 태양광선 방향으로 평행이동하여 만나게 하면 윗 원판이 아래

김성은 죽음에 대한 중환자실 간호사의 인식과 임종간호 수행과의 관계 : 김성희 가정전문간호사의 윤리적 딜레마와 임파워먼트 및 직무만족 관계 : 유진미 간호사의 억제대 사용에 대한

[r]

콘크리트 강도에 따른 응력도 -

대리인 성명 신청인과의

[r]