Você está na página 1de 18

Bruce Lee & Kayla Smart

Table of Content
Executive Summary

Entity-Relationship Diagram
Database Model

3
4

Relational Schema

Normalization and Functional


Dependencies

Normalized Tables in 3rd Normal


Form

Data Dictionary
Queries
CRUD Matrix
Forms

Reflections

8
9
10
11
12
13
14
15
16
17
18
19

Executive Summary
PowerHouse Gym, Located in Miami, Florida, has approximately 200
members. Currently, all records and services are logged on paper form and
filed in cabinets. Given their growth since the New Years, Nearly ten new
members are added each week causing their records to become more
difficult to manage and maintain. However, by implementing a centralized
database system, Powerhouse will gain the ability to digitize their tracking of
members and better organize personal information. Furthermore,
management and gym employees will be able to access clientele information.
This proposal, a database implementation, will increase efficiency and offer
standardization of information input and output through detail reports to
allow companies to make professional decisions using reliable data.
Powerhouse will be able to search through records based on identifiers to
update and view data and better cater to each individual members need.
We will be using Microsoft Access 2010 to complete this design for
PowerHouse.

Entity-Relationship Diagram Database


Model

Relational Schema

Normalization and Functional


Dependencies
Database of PowerHouse Gym is normalized to 3rd Normal Form.
Functional Dependencies:
MembershipID

->
->
->
->
->

MembershipSince
MembershipType
MembershipActive
EmployeeID
CustomerID

->

->
EmployeeFirstName
EmployeeLastName

->
->
->
->
->
->
->
->
->
->
->
->
->

CustomerFirstName
CustomerLastName
Gender
DateOfBirth
Email
HomePhone
WorkPhone
Cell
StreetAddress
AptUnitNum
City
State
Zip

EmployeeID
CustomerID

Normalized Tables in 3rd Normal Form


MEMBERSHIP
MembershipI
D

CustomerID

MembershipSi
nce

MembershipTy
pe

MembershipAct
ive

EmployeeID

MEMBERSHIP (MembershipID, MembershipSince, MembeershipType,


MembershipActive, CustomerID, EmployeeID)
EMPLOYEE
EmployeeID
EmployeeFirstName
EmployeeLastName
EMPLOYEE (EmployeeID, EmployeeFirstName, EmployeeLastName)
CUSTOMER
Customer CustomerFirstNa CustomerLastNa Gende DateOfBir
ID
me
me
r
th
CUSTOMER ( CustomerID, CustomerFirstName, CustomerLastName,
Gender, DateOfBirth)
CONTACT
CustomerID Email
HomePhone WorkPhone
Cell
CONTACT (CustomerID, Email, HomePhone, WorkPhone, Cell)
RESIDENCE
CustomerI StreetAddre AptUnitNu City
State
Zip
D
ss
m
RESIDENCE (CustomerID, StreetAddress, AptUnitNum, City, State, Zip)

Data Dictionary

Attribute

Table

Null?

Unique?

Pkey?

Fkey?

Ref table

Ref
Integrity?

Domain

MembershipID

Membership

NA

NA

Character string
length 225

CustomerID

Membership

Customer

Enforced

Character string
length 225

MembershipSince

Membership

NA

NA

Character string
length 225

MembershipType

Membership

NA

NA

Character string
length 225

MembershipActive

Membership

NA

NA

Data Type Yes/No

EmployeeID

Membership

Employee

Enforced

Character string
length 225

EmployeeID

Employee

NA

NA

Character string
length 225

EmployeeFristName

Employee

NA

NA

Character string
length 225

EmployeeLastName

Employee

NA

NA

Character string
length 225

CustomerID

Cutomer

NA

NA

Character string
length 225

CutsomerFirstName

Customer

NA

NA

Character string
length 225

CutsomerLastName

Customer

NA

NA

Character string
length 225

Gender

Customer

NA

NA

Character string
length 225

DateOfBirth

Customer

NA

NA

Character string
length 225

CustomerID

Contact

Customer

NA

Character string
length 225

Gmail

Contact

NA

NA

Character string
length 225

HomePhone

Contact

NA

NA

Character string
length 225

WorkPhone

Contact

NA

NA

Character string
length 225

Cell

Contact

NA

NA

Character string
length 225

CustomerID

Residence

Customer

NA

Character string
length 225

StreetAddress

Residence

NA

NA

Character string
length 225

AptUnitNum

Residence

NA

NA

Character string
length 225

City

Residence

NA

NA

Character string
length 225

State

Residence

NA

NA

Character string
length 225

Zip

Residence

NA

NA

Data Type Integer


(5)

Queries
1) List Name and Gender of the Customers.
Select Distinct CustomerFirstName, CustomerLastName, Gender
From CUSTOMER;
2) List Name and City of the Customers.
Select CustomerFirstName, CustomerLastName, City
From RESIDENCE Join CUSTOMER On Residence.CustomerID =
Customer.CustomerID;
3) List Customer Name that has active membership.
Select CustomerFirstName, CustomerLastName
From CUSTOMER Join MEMBERSHIP On Cusomter.CustomerID =
Membership.CustomerID
Where MembershipActive = yes;
4) List members joined in April.
Select CustomerFirstName, CustomerLastName
From CUSTOMER Join MEMBERSHIP On Customer.CustomerID =
Membeship.CustomerID
Where MembershipSince = April;
5) List Membership Type for Customer named Kayla.
Select MembershipType
From MEMBERSHIP Join CUSTOMER On
Membership.MembershipID =

Customer.MembershipID
Where CustomerFirstName = Kayla;
6) List the Employee ID that added Bruce as a Customer.
Select EmployeeID
From MEMBERSHIP Join EMPLOYEE On Membership.EmployeeID =
Employee.EmployeeID Join CUSTOMER On
Membership.CustomerID = Customer.CustomerID
Where CustomerFirstName = Bruce;
7) List All Contact for Kayla.
Select Gmail, HomePhone, WorkPhone, Cell
From CUSTOMER Join CONTACT On Customer.CustomerID =
Contact.CustomerID
Where CustomerFirstName = Kayla;
8) List All Residential information for Bruce.
Select * From RESIDENCE
From CUSTOMER Join RESIDENCE On Customer.CustomerID =
Residence.CustomerID
Where CustomerFirstName = Bruce;
9) List Customer with basic memberships.
Select CustomerFirstName, CustomerLastName
From CUSTOMER Join MEMBERSHIP On Customer.MembershipID
=
Membership.MembershipID
Where MembershipType = Basic;
10) List Customer Names with Active Membership prospected by Mary.
Select CustomerFirstName, CustomerLastName
From MEMBERSHIP Join CUSTOMER On Membership.CustomerID
=
Customer.CustomerID Join EMPLOYEE On Customer.EmployeeID
=
Employee.EmployeeID

Where MembershipActive = Yes AND EmployeeFirstName =


Mary;
11) List Customer Name with both an active membership and non
active membership.
Select CustomerFirstName, CustomerLastName
From MEMBERSHIP Right Join CUSTOMER On
Membership.CustomerID =
Customer.CustomerID
Where MembershipActive = yes;
12) List the Membership Information on Kayla and Bruce.
Select * From MEMBERSHIP Join CUSTOMER On
Customer.MembershipID = Membership.MembershipID
Where CustomerFirstName = Kayla AND CustomerFirstName
=Bruce;
13) List the City and State of Kayla.
Select City, State From CUSTOMER Join RESIDENCE On
Customer.CustomerID = Residence.CustomerID
Where CustomerFirstName = Kayla;
14) List the Employee name, Customer Name, and their Membership ID
of the Customer that has a basic membership.
Select EmployeeFirstName, EmployeeLastName,
CustomerFirstName, CustomerLastName, MembershipID
From EMPLOYEE Join MEMBERSHIP On Employee.MembershipID =
Membership.MembershipID Join Customer On
Membership.MembershipID = Customer.MembershipID
Where MembershipType = Basic;
15) List ALL information on Bruce and Kayla,
Select * From MEMBERSHIP Join CUSTOMER On
Membership.CustomerID = Customer.CustomerID Join CONTACT
On Contact.CustomerID = Customer.CustomerID Join RESIDENCE
On Residence.CustomerID = Customer.CustomerID
Where CustomerFirstName = Bruce AND CustomerFirstName =
Kayla;

CRUD Matrix
Forms\Table

Membership

Employee

Customer

Residence

Contact

Employee

CRUD

CRUD

CRUD

CRUD

CRUD

Membership
Data

CRUD

Customer
Data

CRUD

Residence
Info

CRUD

Contact Info

CRUD

Employee
Access
Membership
Form

R
R

C = Create or Insert a Record (row)


R = Read/Query or Slect a row
U = Update or Modify
D = Delete

Forms

Reflection
For both Kayla and Bruce, this project has been a touchstone granting the practice
of data management fundamentals. With the educational procurement, we became
proficient and more perceptive on relationship entity diagrams, normalization, and SQL
queries that involved fetching and creating data. The most difficult element that we both
agree on was normalization. However, with repeated reviewing of lecture notes on the
subject, we are grasping the subject better. Fetching data and creating data using SQL

statements was just as challenging but not too difficult to grasp. Something more
laborious in a time consuming mean is the experience of using Mircrosoft Access and
Oracle. We recognize the gravity of having adequate knowledge in database management
tools such as Access and Oracle. More practice with these applications will benefit our
relevance in the corporate world better implementing database management and
information systems technology.
In conclusion, we acknowledge the usefulness of learning database management;
furthermore, we are gratified with the course learning structure. It has been a major
contributor towards our learning and practice in database management.

Você também pode gostar