6.8 case study: e-r for supplier-and-parts database

23
6.8 Case Study: E-R for Supplier-and-Parts Database Unit 6 Database Design and the E-R Model 6-1

Upload: brandon-hopper

Post on 02-Jan-2016

29 views

Category:

Documents


1 download

DESCRIPTION

6.8 Case Study: E-R for Supplier-and-Parts Database. < e.g.> Supplier-and-Parts Database. S. SP. S# P# QTY S1 P1 300 S1 P2 200 S1 P3 400 S1 P4 200 S1 P5 100 S1 P6 100 S2 P1 300 S2 P2 400 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 6.8  Case Study:  E-R for Supplier-and-Parts Database

6.8 Case Study: E-R for Supplier-and-Parts Database

Unit 6 Database Design and the E-R Model 6-1

Page 2: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Supplier-and-Parts Database

<e.g.> Supplier-and-Parts Database

P# PNAME COLOR WEIGHT CITYP1 Nut Red 12 London

P2 Bolt Green 17 ParisP3 Screw Blue 17 Rome

P4 Screw Red 14 LondonP5 Cam Blue 12 Paris

P6 Cog Red 19 London

P

S# SNAME STATUS CITYS1 Smith 20 London

S2 Jones 10 ParisS3 Blake 30 Paris

S4 Clark 20 LondonS5 Adams 30 Athens

S S# P# QTY S1 P1 300

S1 P2 200 S1 P3 400 S1 P4 200S1 P5 100S1 P6 100S2 P1 300S2 P2 400S3 P2 200S4 P2 200S4 P4 300S4 P5 400

SP

Supplier-and-Parts Database

Unit 6 Database Design and the E-R Model 6-2

Page 3: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Entity/Relationship Diagram

Entity :

Property:

Relationship:

RegularEntity

WeakEntity

Base Derived Multi

CompositeKey

Regular Weak

total partial

<e.g>

Department

Employee

Dependent

SupplierPart

Project

Department_Emp

SP

SPJ

Part_Struct

Proj_Work Proj_Mngr

Emp_Dependent

Emp# Salary

Ename

First LastMI

S# Sname

Status City

Qty

Qty

1

1

1

M

M

M

M

M

MM M

M M

M

Exp Imp

... ...

...P#

Qty

...

Unit 6 Database Design and the E-R Model 6-3

Page 4: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Semantic Concepts

Entity: a thing which can be distinctly identified. e.g. S, P• Weak Entities: an entity that is existence-dependent

on some other entity. e.g. Dependent• Regular Entities: an entity that is not weak.

Property: • Simple or Composite Property• key: unique value• Single or

Multi-valued: i.e. repeating data • Missing: unknown or not applicable.• Base or

Derived: e.g. "total quantity"

Unit 6 Database Design and the E-R Model 6-4

Page 5: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Semantic Concepts (cont.)

Relationship: association among entities.• participant: the entity participates in a relationship.

e.g. Employee, Dependent• degree of relationship:

number of participants.• total participant:

every instance is used. e.g. Dependent

• partial participant: e.g. Employee

Note: An E/R relationship can be one-to-one, one-to- many, many-to-one, or many-to-many.

.

.

.

.

.

.

.

.

Employee Dependent

E1

E2

E3

E4

Dependent M

1 Employee

Unit 6 Database Design and the E-R Model 6-5

Page 6: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Semantic Concepts (cont.)

Subtype: Any given entity can be a subtype of other entity.

e.g. An example type hierarchy:

• Programmer Employee• Application Programmer Programmer

Employee

Programmer

Application Programmer

System Programmer

Unit 6 Database Design and the E-R Model 6-6

Page 7: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Transfer E-R Diagram to SQL Definition

ER-Diagram

SQL Definition

(1) Regular Entities Base Relations e.g. Department DEPT

Employee EMP Supplier S Part P Project J

attributes: properties. primary key: key property.

<e.g> CREATE TABLE EMP (EMP# ...... . . . primary key (EMP#)); . . .

(2) Properties attributes multivalued property: normalized first.

Unit 6 Database Design and the E-R Model 6-7

Page 8: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Transfer E-R Diagram to SQL Definition (cont.)

(3) Many-to-Many Relationships Base Relations

<e.g.> Consider SUPP-PART SP

– foreign keys: key attributes of the participant entity.

– primary key:(1) combination of foreign keys, or(2) introduce a new attribute.

– attributes:

primary key foreign keys properties

ID S# P# QTY

1

2

3

...

S

S#

SPP

QTY

P#

M M

<e.g.> CREATE TABLE SP ( S#, ..., P#, ..., Qty, ..., FOREIGN KEY (S#) REFERENCES S

NULL NOT ALLOWED DELETE OF S RESTRICTED UPDATE OF S.S# CASCADES FOREIGN KEY (P#) REFERENCES P ...... PRIMARY KEY (S#, P#) )

Unit 6 Database Design and the E-R Model 6-8

Page 9: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Transfer E-R Diagram to SQL Definition (cont.)

(4) Many-to-One or One-to-Many or One-to-One Relationships → 不用給 Base-Relation, 但… .

e.g. Consider

DEPT_EMP(Department_Employee)

1° no any new relation is necessary.

2° Introduce a foreign key in "many" side relation (eg. EMP) that reference the "one" side relation (eg. DEPT).

CREATE TABLE EMP ( EMP#, ... DEPT#, ... ...... FOREIGN KEY (DEPT#) REFERENCES DEPT ...... );

Department (DEPT)

DEPT_EMP

EMP#

DEPT#

Employee (EMP)

M

1

DEPT#

Unit 6 Database Design and the E-R Model 6-9

Page 10: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Transfer E-R Diagram to SQL Definition (cont.)

(5) Weak Entities Base Relation + Foreign Key• foreign key: key property of its dependent entity• primary key:

(1) combination of foreign key and its own primary key

(2) introduce a new attribute

e.g. CREATE TABLE DEPENDENT

( EMP#, …

name,

......

FOREIGN KEY (EMP#) REFERENCES EMP

NULL NOT ALLOWED

DELETE OF EMP CASCADES

UPDATE OF EMP.EMP# CASCADES

PRIMARY KEY ( EMP#, DEPENDENT_NAME ) );

Dependent

EMPEMP#

name

M

1

EMP#

e.g. EMP# e.g. name

Unit 6 Database Design and the E-R Model 6-10

Page 11: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Transfer E-R Diagram to SQL Definition (cont.)

(6) Supertypes and SubtypesBase Relation + Foreign Key

<e.g.> CREATE TABLE EMP ( EMP#, ... DEPT#, ... SALARY, ... ...... PRIMARY KEY (EMP#), ...); CREATE TABLE PGMR ( EMP#, ... LANG#, ... SALARY, ... ...... PRIMARY KEY (EMP#) FOREIGN KEY (EMP#) REFERENCES EMP ......);

EMP

PGMR

Unit 6 Database Design and the E-R Model 6-11

Page 12: 6.8  Case Study:  E-R for Supplier-and-Parts Database

17.7 The Entity/Relationship Model

Proposed by Peter Pin-Shan Chen. “The Entity- Relationship Model,” in ACM Trans. on Database System Vol. 1, No. 1, pp.9-36, 1976. E-R Model contains:

• Semantic Concepts and • E/R Diagram.

17-12

Page 13: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Entity/Relationship Diagram

Entity :

Property:

Relationship:

RegularEntity

WeakEntity

Base Derived Multi

CompositeKey

Regular Weak

total partial

<e.g>

Department

Employee

Dependent

SupplierPart

Project

Department_Emp

SP

SPJ

Part_Struct

Proj_Work Proj_Mngr

Emp_Dependent

Emp# Salary

Ename

First LastMI

S# Sname

Status City

Qty

Qty

1

1

1

M

M

M

M

M

MM M

M M

M

Exp Imp

... ...

...P#

Qty

...

17-13

Page 14: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Semantic Concepts

Entity: a thing which can be distinctly identified. e.g. S, P• Weak Entities: an entity that is existence-dependent

on some other entity. e.g. Dependent• Regular Entities: an entity that is not weak.

Property: • Simple or Composite Property• key: unique value• Single or

Multi-valued: i.e. repeating data • Missing: unknown or not applicable.• Base or

Derived: e.g. "total quantity"

17-14

Page 15: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Semantic Concepts (cont.)

Relationship: association among entities.• participant: the entity participates in a relationship.

e.g. Employee, Dependent• degree of relationship:

number of participants.• total participant:

every instance is used. e.g. Dependent

• partial participant: e.g. Employee

Note: An E/R relationship can be one-to-one, one-to- many, many-to-one, or many-to-many.

.

.

.

.

.

.

.

.

Employee Dependent

E1

E2

E3

E4

Dependent M

1 Employee

17-15

Page 16: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Semantic Concepts (cont.)

Subtype: Any given entity can be a subtype of other entity.

e.g. An example type hierarchy:

• Programmer Employee• Application Programmer Programmer

Employee

Programmer

Application Programmer

System Programmer

17-16

Page 17: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Transfer E-R Diagram to SQL Definition

ER-Diagram

SQL Definition

(1) Regular Entities Base Relations e.g. Department DEPT

Employee EMP Supplier S Part P Project J

attributes: properties. primary key: key property.

<e.g> CREATE TABLE EMP (EMP# ...... . . . primary key (EMP#)); . . .

(2) Properties attributes multivalued property: normalized first.

17-17

Page 18: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Transfer E-R Diagram to SQL Definition (cont.)

(3) Many-to-Many Relationships Base Relations

<e.g.> Consider SUPP-PART SP

– foreign keys: key attributes of the participant entity.

– primary key:(1) combination of foreign keys, or(2) introduce a new attribute.

– attributes:

primary key foreign keys properties

ID S# P# QTY

1

2

3

...

S

S#

SPP

QTY

P#

M M

<e.g.> CREATE TABLE SP ( S#, ..., P#, ..., Qty, ..., FOREIGN KEY (S#) REFERENCES S

NULL NOT ALLOWED DELETE OF S RESTRICTED UPDATE OF S.S# CASCADES FOREIGN KEY (P#) REFERENCES P ...... PRIMARY KEY (S#, P#) )

17-18

Page 19: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Transfer E-R Diagram to SQL Definition (cont.)

(4) Many-to-One or One-to-Many or One-to-One Relationships → 不用給 Base-Relation, 但… .

e.g. Consider

DEPT_EMP(Department_Employee)

1° no any new relation is necessary.

2° Introduce a foreign key in "many" side relation (eg. EMP) that reference the "one" side relation (eg. DEPT).

CREATE TABLE EMP ( EMP#, ... DEPT#, ... ...... FOREIGN KEY (DEPT#) REFERENCES DEPT ...... );

Department (DEPT)

DEPT_EMP

EMP#

DEPT#

Employee (EMP)

M

1

DEPT#

17-19

Page 20: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Transfer E-R Diagram to SQL Definition (cont.)

(5) Weak Entities Base Relation + Foreign Key• foreign key: key property of its dependent entity• primary key:

(1) combination of foreign key and its own primary key

(2) introduce a new attribute

e.g. CREATE TABLE DEPENDENT

( EMP#, …

name,

......

FOREIGN KEY (EMP#) REFERENCES EMP

NULL NOT ALLOWED

DELETE OF EMP CASCADES

UPDATE OF EMP.EMP# CASCADES

PRIMARY KEY ( EMP#, DEPENDENT_NAME ) );

Dependent

EMPEMP#

name

M

1

EMP#

e.g. EMP# e.g. name

17-20

Page 21: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Transfer E-R Diagram to SQL Definition (cont.)

(6) Supertypes and SubtypesBase Relation + Foreign Key

<e.g.> CREATE TABLE EMP ( EMP#, ... DEPT#, ... SALARY, ... ...... PRIMARY KEY (EMP#), ...); CREATE TABLE PGMR ( EMP#, ... LANG#, ... SALARY, ... ...... PRIMARY KEY (EMP#) FOREIGN KEY (EMP#) REFERENCES EMP ......);

EMP

PGMR

17-21

Page 22: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

Home Work: Term Project

Design and implementation an useful, complete, and “real” database system.

Steps: Take any data you are familiar with. (from your work or ?)

System Analysis represented by flow chart

By using the E-R model to analysis and describe your data.

Design logical database, user interface, and more

Design the database system as “complete and real” as possible.

Due: Demo and A Comprehensive Report

17-22

Page 23: 6.8  Case Study:  E-R for Supplier-and-Parts Database

Wei-Pang Yang, Information Management, NDHU

end of unit 17