entity relationship (er) modeling the er model developing and er diagram extended er model entity...

Post on 26-Mar-2015

238 Views

Category:

Documents

6 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Entity Relationship (ER) Modeling

The ER Model

Developing and ER Diagram

Extended ER Model

Entity Integrity : Selecting Primary Key

Chapter 4

In this chapter, you will learn:

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

2

The main characteristics of entity relationship components

How relationships between entities are defined and refined

and how those relationships are incorporated into the

database design process

How ERD components affect database design and

implementation

That real-world database design often requires the

reconciliation of conflicting goals

The Entity Relationship (ER) Model

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah

3

ER model forms the basis of an ER diagram

ERD represents conceptual database as viewed

by end user

ERDs depict database’s main components:

◦ Entities

◦ Attributes

◦ Relationships

Entities

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah

4

Refers to entity set and not to single entity occurrence

Corresponds to table and not to row in relational

environment

In both Chen and Crow’s Foot models, entity is

represented by rectangle containing entity’s name

Entity name, a noun, is usually written in capital letters

Attributes

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

5

Characteristics of entities

In Chen model, attributes are represented by ovals and

are connected to entity rectangle with a line

Each oval contains the name of attribute it represents

In Crow’s Foot model, attributes are written in attribute

box below entity rectangle

Attributes (continued)

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

6

DomainsChapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

7

Attributes have domain

Domain is attribute’s set of possible values

Attributes may share a domaina set of permitted values

- ex) domain of customer--name : set of all text stringsof a certain length

Domains are the set of allowable data values for a Column.For example, the FiveDigitZipCode Column on the customer

entity can be in the integer domain. As such, the database would not allow you to place values like 123.45 (floating point) or ABC (character) into that Column.

Identifiers (Primary Keys)

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

8

Underlined in the ERD

Key attributes are also underlined in frequently

used table structure shorthand

Primary Key Guidelines

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah9

Attribute or combination of attributes that

uniquely identifies entity instances in an entity

set

Main function is to uniquely identify an entity

instance or row within a table

Guarantee entity integrity, not to “describe” the

entity

Primary Key Guidelines (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah10

Composite Primary Keys

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

11

Primary keys ideally composed of only single

attribute

Possible to use a composite key

Primary key composed of more than one attribute

Composite Primary Keys (continued)

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

12

When to Use Composite Primary Keys

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah13

Useful as identifiers of composite entities, where

each primary key combination is allowed only

once in M:N relationship

◦Automatically provides benefit of ensuring that there

cannot be duplicate values

When to Use Composite Primary Keys(continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah14

When to Use Composite Primary Keys(continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah15

Useful as identifiers of weak entities, where

weak entity has strong identifying relationship

with parent entity

◦Normally used to represent:

A real-world object that is existent dependent on another

real-world object

A real-world object that is represented in data model as

two separate entities in strong identifying relationship

Composite and Simple Attributes

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

16

Composite attribute can be subdivided

Simple attribute cannot be subdivided

Single-Valued AttributesChapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

17

Single-value attribute can have only a single value

Multivalued AttributesChapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

18

Multivalued attributes can have many values

Multivalued Attributes (continued)

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

19

Resolving Multivalued Attribute Problems

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

20

Although conceptual model can handle M:N

relationships and multivalued attributes, you should

not implement them in relational DBMS

◦ Within original entity, create several new attributes, one

for each of the original multivalued attribute’s

components

Can lead to major structural problems in table

◦ Create new entity composed of original multivalued

attribute’s components

Resolving Multivalued Attribute Problems (continued)

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

21

Resolving Multivalued Attribute Problems (continued)

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

22

Resolving Multivalued Attribute Problems (continued)

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

23

Derived Attributes

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

24

Attribute whose value may be calculated

(derived) from other attributes

Need not be physically stored within database

Can be derived by using an algorithm

Derived Attributes (continued)

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

25

Derived Attributes (continued)

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

26

Relationships

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

27

Association between entities

Participants are entities that participate in a

relationship

Relationships between entities always operate in both

directions

Relationship can be classified as 1:M

Relationship classification is difficult to establish if

know only one side of the relationship

Connectivity and Cardinality

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

28

Connectivity

◦ Used to describe the relationship classification

Cardinality

◦ Expresses minimum and maximum number of entity

occurrences associated with one occurrence of related

entity

Established by very concise statements known as

business rules

Connectivity and Cardinality (continued)

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

29

Existence Dependence

Chapter 3 | Entity Relationship (ER) Modeling Prepared by : Maizatul Akma bt Napiah

30

Existence dependence

◦ Exist in database only when it is associated with

another related entity occurrence

Existence independence

◦ Entity can exist apart from one or more related

entities

◦ Sometimes refers to such an entity as strong or

regular entity

Relationship Strength

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah31

Weak (non-identifying) relationships

Exists if PK of related entity does not contain PK

component of parent entity

Strong (Identifying) Relationships

Exists when PK of related entity contains PK

component of parent entity

Weak (Non-Identifying) Relationships

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah32

Weak (Non-Identifying) Relationships (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah33

Strong (Identifying) Relationships

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah34

Weak Entities

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah35

Weak entity meets two conditions

◦ Existence-dependent

Cannot exist without entity with which it has a relationship

◦ Has primary key that is partially or totally derived

from parent entity in relationship

Database designer usually determines whether

an entity can be described as weak based on

business rules

Weak Entities (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah36

Weak Entities (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah37

Relationship Participation

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah38

Optional participation

◦ One entity occurrence does not require

corresponding entity occurrence in particular

relationship

Mandatory participation

◦ One entity occurrence requires corresponding entity

occurrence in particular relationship

Relationship Participation (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah39

Relationship Participation (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah40

Relationship Participation (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah41

Relationship Participation (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah42

Relationship Degree

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah43

Indicates number of entities or participants associated

with a relationship

Unary relationship

◦ Association is maintained within single entity

Binary relationship

◦ Two entities are associated

Ternary relationship

◦ Three entities are associated

Relationship Degree (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah44

Relationship Degree (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah45

Recursive Relationships

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah46

Relationship can exist between occurrences of

the same entity set

Naturally found within unary relationship

Recursive Relationships (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah47

Recursive Relationships (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah48

Recursive Relationships (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah49

Recursive Relationships (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah50

Recursive Relationships (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah51

Recursive Relationships (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah52

Composite Entities

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah53

Also known as bridge entities

Composed of primary keys of each of the entities

to be connected

May also contain additional attributes that play no

role in connective process

Composite Entities (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah54

Composite Entities (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah55

Composite Entities (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah56

Developing an ER Diagram

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah57

Database design is iterative rather than linear or

sequential process

Iterative process

Based on repetition of processes and procedures

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah58

Building an ERD usually involves the following activities:◦ Create detailed narrative of organization’s description of

operations◦ Identify business rules based on description of

operations◦ Identify main entities and relationships from business

rules◦ Develop initial ERD◦ Identify attributes and primary keys that adequately

describe entities◦ Revise and review ERD

Developinag an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah59

Tiny College◦Tiny College is divided into several schools

Each school is composed of several departments◦Each department may offer courses◦Each department may have many professors assigned to

it◦Each professor may teach up to four classes; each class

is section of course◦Student may enroll in several classes, but (s)he takes

each class only once during any given enrollment period

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah60

Tiny College (continued)◦Each department has several students

Each student has only a single major and is associated with a single department

◦Each student has an advisor in his or her department Each advisor counsels several students

◦The relationship between class is taught in a room and the room in the building

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah61

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah62

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah63

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah64

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER)

Modeling

Prepared by : Maizatul Akma bt Napiah

65

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah66

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah67

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah68

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah69

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah70

Developing an ER Diagram (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah71

Data Modeling Checklist

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah72

Summary

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah73

Entity relationship (ER) model

◦ Uses ERD to represent conceptual database as

viewed by end user

◦ ERM’s main components:

Entities

Relationships

Attributes

◦ Includes connectivity and cardinality notations

Summary (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah74

Connectivities and cardinalities are based on

business rules

In ERM, M:N relationship is valid at conceptual

level

ERDs may be based on many different ERMs

Database designers are often forced to make

design compromises

Summary

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah75

Extended entity relationship (EER) model adds

semantics to ER model via entity supertypes, subtypes,

and clusters

Specialization hierarchy depicts arrangement and

relationships between entity supertypes and entity

subtypes

Inheritance allows an entity subtype to inherit attributes

and relationships of supertype

Summary (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah76

Composite keys are useful to represent M:N

relationships and weak (strong-identifying) entities

Summary (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah77

Surrogate primary keys are useful when there is no

natural key that makes a suitable primary key

In a 1:1 relationship, place the PK of mandatory

entity as foreign key in optional entity

Time-variant data refers to data whose values

change over time and whose requirements mandate

that you keep a history of data changes

Summary (continued)

Chapter 3 | Entity Relationship (ER) Modeling

Prepared by : Maizatul Akma bt Napiah78

Data modeling checklist provides way for

designer to check that the ERD meets set of

minimum requirements

top related