Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
4 views25 pages

Data Modeling Using ER Model - Ch3

Chapter 3 focuses on data modeling using the Entity-Relationship (ER) model, detailing the database design process, including conceptual, logical, and physical design stages. It introduces key concepts such as entities, attributes, relationships, and provides an example of a COMPANY database schema. The chapter also discusses ER diagrams and their notation for visual representation of data models.

Uploaded by

arifinnayem60
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views25 pages

Data Modeling Using ER Model - Ch3

Chapter 3 focuses on data modeling using the Entity-Relationship (ER) model, detailing the database design process, including conceptual, logical, and physical design stages. It introduces key concepts such as entities, attributes, relationships, and provides an example of a COMPANY database schema. The chapter also discusses ER diagrams and their notation for visual representation of data models.

Uploaded by

arifinnayem60
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

CHAPTER 3

Data Modeling Using the


Entity-Relationship (ER) Model

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 1- 1


Chapter Outline
◼ Overview of Database Design Process
◼ Example Database Application (COMPANY)
◼ ER Model Concepts
◼ Entities and Attributes
◼ Entity Types, Value Sets, and Key Attributes
◼ Relationships and Relationship Types
◼ Weak Entity Types
◼ Roles and Attributes in Relationship Types
◼ ER Diagrams - Notation

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 2


Recap: Categories of Data Models

ER Model Relational How data


Model is stored

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 2- 3


Database Design
◼ Conceptual Database Design
◼ entities, attributes, relationships

◼ Logical Database Design


◼ bridges between conceptual and physical level

◼ data structures, relationships, and constraints

◼ Physical Database Design


◼ how the logical design will be implemented on a DBMS

◼ indexing, storage, and security measures.

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 4


Overview of Database Design Process

◼ Two main activities:


◼ Database design
◼ Applications design

◼ Conceptual Database Design


◼ Design the conceptual schema for a database
application

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 5


Overview of Database Design Process

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 6


Methods for Conceptual Design
◼ Entity Relationship (ER) Diagrams
◼ Enhanced Entity Relationship (EER) Diagrams

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 7


Example COMPANY Database
◼ We need to create a Database Schema design
based on the following (simplified) requirements
of the COMPANY Database:
◼ The company is organized into DEPARTMENTs. Each
department has a name, number and an employee
who manages (manager) the department. We keep track
of the start date of the department manager. A
department may have several locations.

◼ Each department controls a number of PROJECTs.


Each project has a unique name, unique number and
is located at a single location.

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 8


Example COMPANY Database (cont.)
◼ The database will store each EMPLOYEE’s social security
number, address, salary, gender/sex, and birthdate.
◼ Each employee works for one department but may work

on several projects.
◼ The DB will keep track of the number of hours per

week that an employee currently works on each project.


◼ It is required to keep track of the direct supervisor of

each employee.

◼ Each employee may have a number of DEPENDENTs.


◼ For each dependent, the DB keeps a record of name,

gender/sex, birthdate, and relationship to the


employee.
Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 9
ER Model Concepts
◼ Entities
◼ Entities are specific things or objects in the mini-world that
are represented in the database.
◼ For example: EMPLOYEE, DEPARTMENT, PROJECT

◼ Attributes
◼ Properties used to describe an entity
◼ For example: an EMPLOYEE entity may have the attributes Name,
SSN, Address, Gender/Sex, BirthDate

◼ A specific entity will have a value for each of its attributes


◼ For example: a specific employee entity may have Name='John
Smith', SSN='123456789', Address ='731, Fondren, Houston, TX',
Sex='M', BirthDate='09-JAN-55‘

◼ Each attribute has a value set (or data type) associated with it
◼ e.g., integer, string, date, enumerated type, …
Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 10
Types of Attributes (1)
◼ Simple Attribute
◼ Each entity has a single atomic value for the attribute. For
example, SSN has a single value

◼ Composite Attribute
◼ The attribute may be composed of several components. For
example:
◼ Address(Apt#, House#, Street, City, State, ZipCode, Country), or
◼ Name(FirstName, MiddleName, LastName)

◼ Multi-valued Attribute
◼ An entity may have multiple values for that attribute. For
example, Phone number or Previous Degrees of a STUDENT.
◼ Denoted as {PhoneNumber} or {PreviousDegrees}.

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 11


Types of Attributes (2)
◼ In general, composite and multi-valued attributes may be
nested arbitrarily to any number of levels, although this is
rare.
◼ For example, PreviousDegrees of a STUDENT is a

composite multi-valued attribute denoted by


{PreviousDegrees (College, Year, Degree, Field)}
◼ Each has four subcomponent attributes:

◼ College, Year, Degree, Field

◼ Multiple PreviousDegrees values can exist

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 12


Example of a composite attribute

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 13


Entity Types and Key Attributes (1)
◼ Entities with the same basic attributes are
grouped or typed into an entity type.
◼ For example, the entity type EMPLOYEE
◼ Key attribute
◼ An attribute of an entity type for which each
entity must have a unique value
◼ For example, SSN is a key attribute of the
entity EMPLOYEE

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 14


Entity Types and Key Attributes (2)
◼ A key attribute may be composite.
◼ VehicleTagNumber is a key of the CAR entity

type with components (Number, State).


◼ An entity type may have more than one key.
◼ The CAR entity type may have two keys:

◼ VehicleIdentificationNumber (popularly called VIN)


◼ VehicleTagNumber (Number, State), aka license
plate number.
◼ Each key is underlined (Note: this is different from
the relational schema where only one “primary”
key is underlined).
Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 15
Entity Set
◼ Each entity type will have a collection of entities
stored in the database
◼ Called the entity set or sometimes entity collection

(collection of all
entities)
A thing in a real-world with
independent existence. i.e.,
person, car
Entity (category)

◼ Entity set is the current state of the entities of that


type that are stored in the database

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 16


Value Sets (Domains) of Attributes
◼ Each simple attribute of an Entity Type is
associated with a value set
◼ E.g., If the range of ages allowed for employees is
between 18 and 65, we can specify the value set
of the Age attribute is a set of integers between 18
and 65

◼ A value set specifies the set of values associated


with an attribute

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 17


Attributes and Value Sets
◼ Value sets are similar to data types in most
programming languages – e.g., integer, character
(n), real, bit
◼ Mathematically, an attribute A for an entity type E
whose value set is V is defined as a function
A : E -> P(V)
Where P(V) indicates a power set (which means all
possible subsets) of V. The above definition
covers simple and multivalued attributes

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 18


Displaying an Entity type
◼ In ER diagrams,
◼ Entity type is displayed in a rectangular box
◼ Attributes are displayed in an oval
◼ Each attribute is connected to its entity type
◼ Components of a composite attribute are
connected to the oval representing the composite
attribute
◼ Each key attribute is underlined
◼ Multivalued attributes displayed in double ovals

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 19


NOTATION for ER diagrams

does not have primary key

Connects weak and strong entity

derived from other base attributes

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 20


Entity Type CAR with two keys and a
corresponding Entity Set

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 21


Example COMPANY Database (Recap)
◼ We need to create a Database Schema design
based on the following (simplified) requirements
of the COMPANY Database:
◼ The company is organized into DEPARTMENTs. Each
department has a name, number and an employee
who manages (manager) the department. We keep track
of the start date of the department manager. A
department may have several locations.

◼ Each department controls a number of PROJECTs.


Each project has a unique name, unique number and
is located at a single location.

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 22


Example COMPANY Database (Recap)
◼ The database will store each EMPLOYEE’s social security
number, address, salary, gender/sex, and birthdate.
◼ Each employee works for one department but may work

on several projects.
◼ The DB will keep track of the number of hours per

week that an employee currently works on each project.


◼ It is required to keep track of the direct supervisor of

each employee.

◼ Each employee may have a number of DEPENDENTs.


◼ For each dependent, the DB keeps a record of name,

gender/sex, birthdate, and relationship to the


employee.
Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 23
Initial Conceptual Design of Entity Types
for the COMPANY Database Schema

◼ Based on the requirements, we can identify four


initial entity types in the COMPANY database:
◼ DEPARTMENT
◼ PROJECT
◼ EMPLOYEE
◼ DEPENDENT

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 24


Initial Conceptual Design of Entity Types:
EMPLOYEE, DEPARTMENT, PROJECT, DEPENDENT

Copyright © 2016 Ramez Elmasr and Shamkant B. Navathei Slide 3- 25

You might also like