database design sections 4 & 5 subtype, supertype, mutually exclusive, non-transferability,...
TRANSCRIPT
Database Design
Sections 4 & 5Subtype, Supertype, Mutually exclusive, non-transferability, transferable, 1:1, 1:M, M:M, Redundant, Intersection entity, Barred relationship, First Normal Form (1NF)
Reserved Words
A reserved work is one that has a specific meaning and function in the computer system, language, or database.
Examples: NULL DATE DISTINCT
Video Store Matrix
ACTOR CUSTO-MER
MOVIE TAPE
ACTOR Featured in
CUSTO-MER
The renter of
MOVIE The feature of
On
TAPE Rented by A copy of
Video ERD
featured in
TAPEnumberformat
MOVIEid
titlecategory
ACTORstage namereal name
CUSTOMERmembership
numberlast namefirst name
phone number
a copy of
on
the feature ofrented by
the renter of
Possible solution
ORDER#number
*date*time
STAFF#id
*first name*last name
*date of birth*salary
FOOD ITEM#number
*description*price
handle
handled by
list
listed on
Subtype & Supertype
Supertype (entity) can be subdivided into Subtypes
Example:
JOBmanager
clerksales
support
Attributes
Supertype can have attributes at supertype level
Attributes at supertype level are for all subtypes
Subtypes can have own attributes for only that attribute
Example
EXAM#number
*description*weight*date
*grade for written component
MIDTERM*grade for
oral presentation
FINAL*extra pts for opt. paper
QUIZ
BONUS QUESTIONS
STUDENT
included in
included
taken by
Global Fast Food Employees
STAFF is an entity and supertype What are the attributes of STAFF? What subtypes exist in STAFF?
Are there any attributes in any of the subtypes?
Example 4.3.9
AUTOMOBILE subtypes are not mutually exclusive
AUTOMOBILE possible solution BUILDING subtypes have problem of
not being exhaustive, should be minimum of 2 types
Business Rules Recognize if Business rule is implemented
by the data model or by programming Example:
Only an employee with a title of manager can manage other employees
The event planner must contact the customer before the DJ can be assigned
Business rules can changed as society changes or business leaders feel change needed
Business rule types Structural
Must be entered at time of initial data entry Example: When ORDER entered a staff id must
be entered Does not require code written to enforce
Procedural Work flow related Programmed validation is procedural constraint
Generally need to write code Example: Commission can not be > 25% of
salary
Relationship transferability Rules established for the purpose such as
safety, efficiency, or increased profit Example: Airline tickets
can be transferable or non-transferable? Non-transferable means also not updatable symbol used to denote non-
transferable blood type is non-transferable
Non-transferable relationship
Orders are non-transferable Resolution would be to cancel order
and create new order
CUSTOMER ORDER
place
placed by
Example 5.1.6 #1
Each town may be the birthplace of many people. Each person must be born in one and only one town.
PEOPLE TOWNbirthplace for
born in
One to One relationship
Usually few of these relationships Often mandatory at one side If mandatory at both ends be aware,
it might be a error. Possible should be only one entity not two
PERSON BYCYCLE
ride
ridden by
One to Many
Most common type are mandatory on one side and optional on the other
Mandatory at both ends models entities that cannot exist without each other
ORDERORDER TYPE
One to Many example
TAX RETURNTAX REPORT
LINE
BAND MUSICIANcomposed of
belong to
composed of
entered in
Many to Many
Often common in initial version of ERD
Later stage of design converted to other type
STUDENT TEACHERlearn from
educate
Redundant relationship
Redundant relationship is one that can be derived from another relationship in the model
Many to Many Relationship Resolution
All M:M relationships must be changed to a set of 1:M and M:1 relationship
Insert a transition entity between Occurs when you go from conceptual
model to design model
Resolving M:M with Intersection
Create an intersection entity If you can’t find a good intersection
entity create one by concatenate two entities together
Normalization
To make sure you don’t store the same data twice in the model
Also, that you store the data in the correct place
We will cover the first 3 normal forms.
First Normal Form (1NF)
First Normal Form requires that there be no multivalued attributes and no repeating groups.
To check for 1NF, validate that each attribute has a single value for each instance of the entity.
In other words: “One value per Attribute”.
Example 1NF
This has multiple values for the classroom.
SCHOOL BUILDING#code*name
*address*classroom
Example 1NF
Telephone is a multvalued attribute that could be an Entity. Ie. Home, work, mobile, fax etc.
Not all Employees have multiple phones, so there would eliminate multiple NULL values.
EMPLOYEE#id
*name*address
.
.º telephone
º salary