Wk10 - Algonquin College

advertisement
Database Design
WEEK 10
Agenda – Week 10
Review
 Hybrid Review
 Table Instance Charts
 Primary Keys
 Normalization

Database Design Steps Review
Determine the purpose of the database
 Determine the entities
 Determine the fields & keys
 Determine the relationships
 Refine the design


This is an iterative process that is
completed several times
Review
Entities are….
 Attributes are….
 Primary key is…..
 Foreign key is ……


Information is accessed according to its
structure, not its location

Use keys to identify relationships
Planning the Design

ERD –
◦
◦
◦
◦
Serves as a blueprint for implementation
Reduces problems resulting from poor design
Determines how data is stored
Ensures that the design meets the user’s
needs
Review

Solution to Hybrid Homework
TABLE INSTANCE
CHARTS
Table Instance Chart Sample

One chart completed for each table
◦ Wk10_TableInstanceChart.xlsx
Exercise

Create table instance chart for:
◦ the puzzle (together)
TYPES OF DATA
Common Data Types in Access
Autonumber
 Text
 Memo
 Number
 Currency
 Date/Time
 Yes/No

Autonumber
Use for unique sequential numbering
 Commonly used for PK
 Increments by 1
 Automatically inserted when a record is
added.

Text

Used for text or combinations of text and
numbers, such as addresses, or for
numbers that do not require calculations,
such as phone numbers, part numbers, or
postal codes.

Stores up to 255 characters.
Memo

Use for lengthy text and numbers, such as
notes or descriptions.

Should be used sparingly

Stores up to 65,536 characters (if not
more)
Number

Use for data to be included in
mathematical calculations, except
calculations involving money (use
Currency type).
Yes/No

Use for data that can be only one of two
possible values, such as
◦ Yes/No,
◦ True/False,
◦ On/Off.

Null values are not allowed
Exercise

Create table instance chart for:
◦ Wine Database
◦ Curling Bonspiel scenario
RELATIONSHIPS
Three Basic Types of Relationships

One to One (1:1)

One to Many (1:M)

Many to Many (M:M)

Called the cardinality of the relationship
◦ The cardinality indicates the maximum number of
relationships between the entities, therefore
"many" can be explained as "one or many" or
sometimes "zero, one, or many".
One to One Relationships

1:1 relationships exists when a single
record in one table has 1 and only 1
corresponding record in another table,
and vice versa
One to One Example
A voter can cast only one vote in an
election.
 A ballot paper can belong to only one
voter.
 So there will be a 1:1 relationship
between a Voter and a Ballot Paper.

Voter
Ballot
One to Many Relationships

Most common

1:m or m:1

Relationship exists when a record can
relate to 1 or more records in a second
table but.. A record in the 2nd table can
only relate to 1 record in the first table
One to Many Example

A person can own more than one car. A
car can only have one owner.
Owner
Vehicle
Many to Many Relationships

M:M

Relationship exists when a record in
either table can relate to more than one
record in the other table
Many to Many Example

A student can have more than one
professor; the same professor can have
many students
Student
Professor
Resolving Many to Many
M:M is not allowed
 We create a junction or joiner entity
 The name of the joiner entity is often a
combination of the 2 entities

Student
Stud_Prof
Professor
Many to Many Relationships
Relationship Review
Normalization

Refining the ERD

Task of analyzing entities and the
relationships created have been
formalized into a process called
normalization.
Exercise: ERD & Relationships

Draw an ERD for the puzzle
◦ Describe the relationships using the following
format
Source
Entity
Destination
Table
Customer
Movie Rental
Movie Rental customer
Movie
Movie Rental
Movie Rental Movie
Relationship Describe the
relationship in your
Type
own words
Exercise: ERD & Relationships

Draw an ERD for the wine scenario
◦ Describe the relationships using the following
format
Source
Entity
Destination
Table
Relationship Describe the
relationship in your
Type
own words
◦ Describe the relationships in the curling
bonspiel
Review Relationship Essentials

Need a primary key

Need a foreign key
◦ A foreign key is a column in a table used to
reference a primary key in another table.

Not all tables will require a foreign key

Primary key and foreign keys are essential
when you create relationships that join
together multiple tables in a database
Build Time

For each of the following scenarios:
◦
◦
◦
◦
Create and write out a business narrative
Create list of tables
Create the attributes for the table
Create a simple ERD and the relationship
rules
◦ Create a table instance chart
Scenarios
Political Canvassing
 Human Resource Dept.
 Private Elementary School
 Yoga Studio

*** note each database should be around 5
tables
Access DB
Create a database
 Create tables
 Build relationships
 Populate tables

Hybrid / Homework

Hybrid: Refer to the 14 Week schedule

Database Assignment Part 1
Quiz Time
Download