SOLUTIONS MANUAL
A Practical Guide to Database Design | 2nd Edition
by Rex Hogan
SC
O
R
EG
U
ID
ES
lkjhgfds
, kjhgfdsa
Table of Content
1. Overview of Databases
2. Normalization
3. Database Implementation
SC
4. Normalization and Physical Design Exercise
5. The erwin Data Modeling Tool
O
6. Using Microsoft Access
R
7. Using SQL Server
EG
8. Using Perl to Extract and Load Data
9. Building User Interfaces
10. Creating the University Database Application
U
11. PHP Implementation and Used
ID
ES
lkjhgfds
, kjhgfdsa
A Practical Guide to Database Design, 2e By Rex Hogan (Solutions Manual)
Chapter 1
Questions
1. Do you consider MYSQL to be a Relational Database System? Why or why not?
ANS:
Frankly, either a Yes or No is acceptable if justified appropriately.
SC
I personally don’t consider MQSQL to be a RDBMS. Each table is implemented in its own flat file. If a
new column is added, the original file is copied into a new file having the additional column. This, in my
opinion, does not meet the criteria of being able to dynamically make changes while the table is being used.
Those saying Yes could base that judgement on its ability to respond to SQL queries.
2. In the context of a database transaction, what is a “unit of work”? Why is it important?
ANS:
O
A “unit of work” is a series of updates to the database that are guaranteed to either succeed as a group, or
all be reversed should some error or problem occur.
It is important because the database will always contain data that is in a consistent state from the user’s
perspective.
R
3. What are the “ACID” properties of a RDBMS? Why are they important?
ANS:
The ACID properties refer to:
EG
Atomicity (database updates made are “all or nothing”)
Consistency (data in the database will always be in a consistent state)
Isolation (multiple concurrent users can access the database and updates from one will be shielded from
others until a commit point is reached)
Durability (once a transaction commits updates, the updates are guaranteed to survive any type of failure;
e.g., a disk drive fails, or the computer crashes)
4. In a database recovery operation, what files are used to restore the database? What does each contain?
U
ANS:
Database backup – contains a complete copy of the database at some point in time. A database backup
could be a “full” backup, making a complete copy of the data, or a “partial” backup, making a copy only of
database components that were altered after the last full backup was made.
ID
Log files – contain “before” and “after” records of the database as updates are made.
The recovery operation would begin by 1) restoring the database using the last full backup, 2) if it exists,
applying a partial backup to apply updates it contains, then 3) using log files to apply all updates made after
the last full/partial backup.
ES
5. What’s the difference between a Table and a View?
ANS:
A table is a set of related data elements stored and managed vertically as columns (identified by name) and
records are stored as horizontal rows.
A view is a virtual definition for a subset of data contained in a table or for columns residing in two or
more associated tables. Views are populated at run time based on their definition and the data residing in
the view’s underlying tables at that moment of execution.
lkjhgfds