Beruflich Dokumente
Kultur Dokumente
2
Need of an Open Model
n How to represent a database schema?
n SQL? Non standard DBMS syntax!
n The model must be as open as possible
and not tied to any technology (e.g. a
DBMS) or to any particular business
methodology (of any organization).
n Entity-Relational Model introduced in 1976
by Peter Chen.
3
Entity-Relational Model
n E-R Model is a detailed, logical representation
of the data for an organization or for a
business area.
n It mainly answers following questions:
n What are the entities and relationships in
the enterprise?
n What information about these entities and
their relationships should we store in the
database?
n What are the integrity constraints or
business rules that hold?
4
E-R Model Constructs
n The
E-R model is usually expressed as
an E-R diagram.
n Entities
(tables), Attributes (columns),
Relationships (links)
n Widespread CASE tool-support
n Chen vs. Martin notations
n Crows Foot or fork notation
5
En##es Instances and Types
n Entity instance: A person, place, object,
event, or concept in the user environment
about which the organization wishes to
maintain data.
n A single occurrence of an entity type,
corresponding to a row in a table.
n Entity Type collection of entities, often
corresponds to a table.
6
Entity Type Characteristics
n Good
n Have many instances in the database (e.g.
products)
n Composed of multiple attributes (product id,
name, price, expiry)
n Bad
n Singleton (entities with just one instance)
n An
individual application user, single organization,
output of the application (e.g. a sales report)
n Naming Conventions:
n Singular (e.g. Player) vs. Plural (e.g. Players)
7
Next: Attributes and then
Relationships
8
Attributes
n Attributeproperty or characteristic of an
entity or relationship type.
n Examples: Product name (text), Barcode
(numeric), Product price (numeric), Expiry
date (date/time)
Career Runs
Player
Player Name Centuries
Player Name
Career Runs
Player Centuries
9
Common Attribute Data Types
n Integer, smallint, tinyint: A finite subset
of the integers that is machine-dependent.
n Float (n). Floating point number, with
user-specified precision of at least n digits.
n Date, datetime, time, year: Different date
and time values
n Char (n): Fixed n length character string.
11
Attribute Classification
n Simple n Composite
n Price n Address (street, city)
n Single-Valued n Multivalued
n Customer Age n Phone number
n Stored n Derived
n Product Price n Order amount
n Required n Optional
n Barcode n Expiry date
13
Derived Attributes
n Value can be computed from other attributes
n Example: Age (given a Date of Birth)
Player
Player Name
Career Runs
Centuries
[Average]
14
Composite Attributes
n An attribute broken into many parts
n Compound data values
Player
15
Multi-valued Attributes
n Multiple data values for one attribute are
allowed
n Multi-valued and composite!
Player Player
16
Time-stamping Example
n Use attribute that is both multivalued and
composite to maintain history as well as a
time reference.
17
Identifier (Key)
n Identifier (Key)An attribute (or
combination of attributes) that uniquely
identifies individual entity instances.
n Examples
n Employees CNIC
n Products Barcode
n Travellers Passport number
18
Simple and Composite Identifiers
The identifier is boldfaced and underlined
19
Characteristics of Identifiers
n Will not be null or empty.
n Will not change in value over time.
n No intelligent identifiers e.g., containing
campus or degree-program of student that
might change (F12ISCS101).
n Substitute
new, simple keys for long,
composite keys
20
Entity and Attributes Combined
n Entity example with a multivalued
attribute (Skill) as well as a derived
attribute (Years_Employed)
Derived
Multivalued
from date
an employee can
employed and
have more than
current date
one skill
21
Choosing Entity and Attribute Names
n Price vs. price_float
n Related to business, not technical, characteristics
n $@l35 for Sales
n Readable and Repeatable
n Prc?
n Meaningful and self-documenting
n Price vs. Amount
n Unique in meaning, in contrast to confusing terms
n A, S, et.
n Composed of words from an approved list
22
Check Point
n HEC is streamlining their scholarship unit
and need your help to implement a
database system
n Scholarships are granted by a source entity
(e.g. EU, WorldBank, IDB, GoP); Each
entity may announce multiple scholarship
programs; An applicant, any Pakistani
national may apply for multiple scholarships
n Target: Identify entities and attributes
23
Some of the entities
24
Canteen and Stores
!
#
#
"
$#%&''
(')
(') -
+,
#
+,&, *
#
#
#(')
#(')
(')
25
Relationships
n Relationship instance is modeled as
lines between specific entity instances
Player Team
Inzimam-ul-Haq Pakistan
Brian Lara Lahore Badshah
Rana Naveed West Indies
26
Relationships
n Relationship Type: Association between
entity types.
n Modeled as labeled line between entity
types
Plays For
Player Team
27
Cardinality of Relationships
n Cardinality Constraints - the number of
instances of one entity that can or must be
associated with each instance of another
entity
n Minimum Cardinality
n Zero - optional
n One - mandatory
n Maximum Cardinality
n The maximum number of entity instances that
could be association with the target entity in the
relationship
28
One-to-One Association
n Each entity in the relationship will have exactly
one related entity instance
n Example: Employee-ParkingSpace
manages
Manager Team
29
One-to-Many Association
n An entity instance on one side of the relationship
can have many related entity instances, but an
entity on the other side will have a maximum of
one related entity instance.
30
Many-to-Many Association
n Entities on both sides of the relationship can
have many related entities on the other side
n Example: Student-Course
31
Degree of Relationships
n Degree of a relationship is the number of
entity types that participate in it.
n Unary: One entity related to another of
the same entity type
One-to-one a persons marries One-to-many many players are
with just one other person lead by one player (a captain)
married To leads
Person Player
32
Binary Relationships
n Entities of two different types related to
each other
1-1 manages
n
Manager Team
1-M
played By
n Match Player
play for
n M-M Player Team
33
Ternary Relationship
n Entities of three different types related to
each other
Match
Parts
Team Plays At Ground
34
Multiple Relationships
n Entities can have more than one type of
relationship between them.
35
Relationship with Attributes
n Relationships can have attributes of
their own
n These describe features pertaining to
the association between the entities
in the relationship
36
Binary Relationship with Attributes
n Here, the date completed attribute
pertains specifically to the employees
completion of a course
n Hence an attribute of the relationship
37
Ternary Relationship with
Attributes
n Shipping and cost is associated with the
existence of the relationship.
Shipping_mode
Unit_Cost
38
What to do with attributes of
a relationship in a database?
Transform to an entity
-> Hence a table
39
Associative Entities
n A many-to-many relationship (with/out
attributes) is converted into an entity.
n Ternary relationships should also be converted to
associative entities.
n The associative entity preferably has a unique
identifier (mostly composite) and may also have
other attributes.
n The associative entity may participate in other
relationships other than the entities of the
associated relationship.
40
Associative Entity Example
n Many-to-many cardinality between entities has
been replaced by two one-to-many relationships
with the associative entity.
41
Bill of Materials Structure
n Unary M-M association with attributes
42
Ternary Relationship as an
Associative Entity
43
Strong vs. Weak Entities
Strong Entities Weak Entity
n Identifier underlined n Identifier underlined with
with a dashed line a strong double line
n Has its own unique n Only has partial identifier
identifier n Dependent on a strong
n Exist independently of entity (identifying
other types of entities owner), cannot exist on
n Identifying relationship its own
links strong entities to n Entity box has double line
weak entities
44
Identifying Relationship
45
Summary of E-R Notations
Entity
Attribute
symbols
symbols
A special entity
that is also a Relationship
relationship symbols
Relationship
degrees specify
number of
entity types Relationship
involved cardinalities
specify how
many of each
entity type is
allowed46
Microsoft Visio
Notation for Pine
Valley Furniture
E-R diagram
Other modeling
software tools
may have
different notation
for the same
constructs.
47