Lesson 32

advertisement
Lesson 32: Designing a
Relational Database
Lesson Objectives

After studying this lesson, you will be able to:
 Identify
and apply principles for good relational
database design
 Modify
field settings and create Lookup fields that return
multiple values
 Create
a split form
 Identify
database relationship types and create and
print a relationships report
 Identify
2
object dependencies
Principles of Good Database Design

Reduce redundancy
 Divide
data into subject-based tables

Show Access how data in all tables related to scope
(purpose) of the database

Ensure that data is complete and accurate
Tip! Incomplete/inaccurate data results in inaccurate processing
and reporting, and invalidates the integrity of the database.

3
Include report formats, forms, and queries to process
data and report information that meets the intended
needs of the database
Applying Design Steps
Design Step/Task
Result
Identify the purpose of the database
To generate a utility bill
Locate and organize detailed information about
what the database should contain
Customer name, address, amount of power used,
associated costs, company info
Separate the details into related groups
Customer details, billing history, cost of power, utility
company details
Identify additional breakdowns in information
details
Customer first name, last name, street, city, state, zip
code, telephone, etc.
Specify a primary key for each group of data
Customer number
Relate tables to each other by identifying how
data in one table can be connected to data in
other tables
Customer number added to other tables to connect the
tables
Create the database in Access and test the
design
Create tables to determine whether or not you can
generate the billing statement
Apply normalization rules and make necessary
adjustments
Review the design using normalization levels (described
elsewhere) and determine normalization level attained
4
Normalizing Data

Process of refining tables, keys, fields, and
relationships to create an efficient database

Includes:

5
 Discarding
repeating groups
 Minimizing
redundancy
 Eliminating
composite keys for partial dependency
 Separating
non-key attributes
Follows steps and guidelines for designing a database
Common Field Properties
Property
Description
Field Size
Controls the number of characters Access allows in the field
Input Mask
Sets the appearance of field data entered, adds standard characters such as
parentheses, slashes and hyphens to the data, formats all data in caps or lowercase,
etc.
Caption
Displays alternate text in place of the field name in datasheets, on forms, and in
reports; caption text is usually more descriptive, especially when field names are
cryptic
Default Value
Sets a data value that Access enters for a field when no other data is entered
Validation Rule
Sets rules for data entered in a field so Access can check the data to ensure it meets
value limitations
Validation Text
Provides instructional information to help data entry personnel correctly enter data for
a field with a validation rule; Access alerts user if invalid data is entered
Required
Sets the field as a required field so data must be entered into that field
6
Number Field Size Property Details
Field Size
Description
Byte
Stores whole numbers between 0 and 255 using 1 byte; allows no fractions or
decimal points
Integer
Stores whole numbers between -32,768 and 32,767 using 2 bytes rather than the 7
bytes used for high values
Long Integer
Stores whole numbers between -2,147,483,648 and 2,147,483,647 using 4 bytes
rather than the 14 bytes normally used for high values
Single
Stores positive and negative numbers to exactly 7 decimal places using 4 bytes
Double
Stores positive and negative numbers to exactly 15 decimal places using 8 bytes
Replication ID
Identifies replication of tables, records, and other objects in Access 2003 or earlier
databases using 16 bytes
Decimal
Stores positive and negative numbers to exactly 28 decimal places using 121 bytes
7
Multi-Value Lookups

Enables you to select
multiple values for a
field
 For
example, you
might want to identify
multiple vendors that
supply products
8
Split Forms

9
Displays form view at the top of the window and
datasheet view at the bottom of the window.
Working with Relationships

Three types of relationships:
 One-to-One
 One-to-Many
 Many-to-Many
10
One-to-One Relationship

Each record in Table A can have only one matching
record in Table B
 Example:
Each employee’s address is stored in one
table and has a matching record in the payroll table
11
One-to-Many Relationships
 Each
record in Table A can have many
matching records in Table B
 Example:
Each supplier in the Suppliers table could
have multiple items in the Inventory table
12
Many-to-Many Relationships

Records in Table A can
have many matching
records in Table B, and
vice-versa


Example: Items could be ordered by many customers and each
customer might order many items
13
Normally requires a
Junction Table
Relationship Join Line

14
Connects fields common to both tables
Referential Integrity

Sorting query results

A system of rules used to
ensure that relationships
are valid

Must be set in Edit
Relationships dialog box

Access identifies the many
and one side of the
relationship
15
Cascade Options

Set in the Edit Relationships dialog box

Cascade Update updates key field of a related table
when edits are made to field in primary table

Cascade Delete removes records from a related table
when record is deleted from primary table
16
Relationship Join Properties

Join Properties: Control circumstances under which
a record from a related table appears when you run a
query

Inner Joins: Check for records with matching values
in the join field and displays only those that match

Left Outer Joins: Display all records from the one
side of a one-to-many relationship

Right Outer Joins: Display all records from the many
side of a one-to-many relationship
17
Join Properties Dialog Box
Right table name: Many side
Left table
name: One
side of
one-to-many
relationship
Join types and
descriptions
of one-to-many relationship
One vs. Many Sides of Relationships
Many (right) side
One (left) side
of relationship
of relationship
Join Type button
Object Dependencies

Shows the object for which
dependencies are shown
at the top

You can choose to identify
object dependent on the
active object or those on
which the object depends

Objects are listed by type
Lesson 32: Designing a
Relational Database
Download