A Practical Guide to Database Design: 2nd Edition (Hardback) book cover

A Practical Guide to Database Design

2nd Edition

By Rex Hogan

Chapman and Hall/CRC

414 pages | 223 Color Illus. | 67 B/W Illus.

Purchasing Options:$ = USD
Hardback: 9781138578067
pub: 2018-03-16
eBook (VitalSource) : 9781351265485
pub: 2018-03-08
from $49.98

FREE Standard Shipping!


Fully updated and expanded from the previous edition, A Practical Guide to Database Design, Second Edition, is intended for those involved in the design or development of a database system or application. It begins by focusing on how to create a logical data model where data is stored "where it belongs." Next, data usage is reviewed to transform the logical model into a physical data model that will satisfy user performance requirements. Finally, it describes how to use various software tools to create user interfaces to review and update data in a database.

Organized into 11 chapters, the book begins with an overview of the functionality of database management systems and how they guarantee the accuracy and availability of data. It then describes how to define and normalize data requirements to create a logical data model, then map them into an initial solution for a physical database.

The book next presents how to use an industry-leading data modeling tool to define and manage logical and physical data models. After that, it describes how to implement a physical database using either Microsoft Access or SQL Server and how to use Microsoft Access to create windows interfaces to query or update data in tables.

The last part of the book reviews software tools and explores the design and implementation of a database using as an example a much more complex data environment for a University. The book ends with a description of how to use PHP to build a web-based interface to review and update data in a database.

Table of Contents

1. Overview of Databases

1.1 What’s a "Database"?

1.2 Guranteed Accuracy and Availability of Data

1.3 Dynamic alteration of design

1.4 Dynamic Queries – any data, any time

1.5 Referential Integrity Enforcement

1.6 Backup/Recovery

1.7 Failover

1.8 Typical Installation

2. Normalization

2.1 Introduction

2.2 The "Language of Normalization"

2.3 Creating the Entity/Attribute List

2.4 Cleaning Up the Entity/Attribute List

2.5 Normalization

2.6 Creating the Data Model

2.7 Fourth Normal Form

2.8 Fifth Normal Form

3. Database Implementation

3.1 Logical to Physical Design

3.2 Usage Path Analysis

3.3 Table Key and Column Data Types

3.4 Indexes

3.5 Table Creation

4. Normalization and Physical Design Exercise

4.1 Introduction

4.2 Creating the Entity/Attribute List

4.3 First Normal Form

4.4 The Logical Data Model

4.5 Second Normal Form

4.6 Third Normal Form

4.7 The Physical Data Model

5. The erwin Data Modeling Tool

5.1 What is a Data Modeling Tool?

5.2 Why do I need a Data Modeling Tool?

5.3 Reverse Engineering

5.4 Change Management

5.5 Download and Install erwin Trial Software

5.6 Create the University Logical Data Model

5.7 Create the University Physical Data Model

5.9 Create a SQL Server University Database

6. Using Microsoft Access

6.1 Overview

6.2 Modifications to the Database Design

6.3 Loading Data Into Tables

6.4 Creating Queries

6.5 Using Forms

6.6 Generating Reports

6.7 Deploying Access for a Team of Users

6.8 The Role of Pass-Thru Queries

7. Using SQL Server

7.1 Overview

7.2 Database Creation/Installation

7.3 Creating Databases

7.4 User Roles

7.5 Authorized Users

7.6 Backup/Recovery

7.7 Loading Data Into Tables

7.8 Creating Views

7.9 Manual Queries and Edits

7.10 Using Stored Procedures

7.11 Using SQL Server Agent

8. Using Perl to Extract and Load Data

8.1 Why Perl?

8.2 Perl vs. Python

8.3 Windows vs Unix

8.4 Review key matching features

8.5 Monitor SQL Server logs

8.6 Monitoring Windows Logs

8.7 Other Applications and Uses

8.8 Loading Data into Tables

8.9 Summary

9. Building User Interfaces

9.1 Used in Typical Office Environment

9.2 Use Microsoft Access as GUI

9.3 .NET Framework

9.4 PHP

9.5 JAVA

10. Creating the University Database Application

10.1 Create tables for University environment

10.2 Create Relationships to Enforce Referential Integrity

10.3 Design a Screen to Add New Students

10.4 Create a Screen to Enroll Students in a Class

10.5 Create a Screen to Assign Grades

10.6 Create Screens to Enter Midterm and Final Grades

10.7 Create a "Main" Menu

10.8 Developing Applications for University Administrators

11. PHP Implementation and Used

11.1 Why PHP?

11.2 System Components

11.3 Design of Web-based Interface

11.4 Script Logic

About the Author


Rex Hogan has over 40 years experience as a database administrator and as a software engineer. This includes over 17 years of experience with Southwestern Bell/AT&T where he became their lead database specialist. During this period, he also taught various undergraduate and graduate classes at Washington University’s Center for the Study of Data Processing in St. Louis, MO. He then worked for TRW/Northrop Grumman for 16 years, primarily as a DBA/senior software engineer where he became a specialist in the rapid design and development of database systems and applications. Finally, he worked for five years as a computer scientist for the Air Force Office of Special Investigations, where he developed computer systems to monitor usage of USAF internet traffic. He has authored and co-authored several books, including A Practical Guide to Database Design (first edition), Diagnostic Techniques for IMS DataBases,and Managing IMS Databases.

Subject Categories

BISAC Subject Codes/Headings:
COMPUTERS / Database Management / General
COMPUTERS / Database Management / Data Mining
COMPUTERS / Software Development & Engineering / General