COVID-19 Update: We are currently shipping orders daily. However, due to transit disruptions in some geographies, deliveries may be delayed. To provide all customers with timely access to content, we are offering 50% off Science and Technology Print & eBook bundle options. Terms & conditions.
Relational Database Design and Implementation - 4th Edition - ISBN: 9780128043998, 9780128499023

Relational Database Design and Implementation

4th Edition

Author: Jan Harrington
Paperback ISBN: 9780128043998
eBook ISBN: 9780128499023
Imprint: Morgan Kaufmann
Published Date: 22nd April 2016
Page Count: 712
Sales tax will be calculated at check-out Price includes VAT/GST
Price includes VAT/GST

Institutional Subscription

Secure Checkout

Personal information is secured with SSL technology.

Free Shipping

Free global shipping
No minimum order.


Relational Database Design and Implementation: Clearly Explained, Fourth Edition, provides the conceptual and practical information necessary to develop a database design and management scheme that ensures data accuracy and user satisfaction while optimizing performance.

Database systems underlie the large majority of business information systems. Most of those in use today are based on the relational data model, a way of representing data and data relationships using only two-dimensional tables. This book covers relational database theory as well as providing a solid introduction to SQL, the international standard for the relational database data manipulation language.

The book begins by reviewing basic concepts of databases and database design, then turns to creating, populating, and retrieving data using SQL. Topics such as the relational data model, normalization, data entities, and Codd's Rules (and why they are important) are covered clearly and concisely. In addition, the book looks at the impact of big data on relational databases and the option of using NoSQL databases for that purpose.

Key Features

  • Features updated and expanded coverage of SQL and new material on big data, cloud computing, and object-relational databases
  • Presents design approaches that ensure data accuracy and consistency and help boost performance
  • Includes three case studies, each illustrating a different database design challenge
  • Reviews the basic concepts of databases and database design, then turns to creating, populating, and retrieving data using SQL


Professionals and students learning database design

Table of Contents

Part I: Introduction


    Chapter 1: The Database Environment

    • Abstract
    • Defining a Database
    • Systems that Use Databases
    • Data “Ownership”
    • Database Software: DBMSs
    • Database Hardware Architecture
    • Other Factors in the Database Environment
    • Open Source Relational DBMSs

    Chapter 2: Systems Analysis and Database Requirements

    • Abstract
    • Dealing with Resistance to Change
    • The Structured Design Life Cycle
    • Conducting the Needs Assessment
    • Assessing Feasibility
    • Generating Alternatives
    • Evaluating and Choosing an Alternative
    • Creating Design Requirements
    • Alternative Analysis Methods

    Part II: Relational database design theory


      Chapter 3: Why Good Design Matters

      • Abstract
      • Effects of Poor Database Design
      • Unnecessary Duplicated Data and Data Consistency
      • Data Insertion Problems
      • Data Deletion Problems
      • Meaningful Identifiers
      • The Bottom Line

      Chapter 4: Entities and Relationships

      • Abstract
      • Entities and Their Attributes
      • Domains
      • Basic Data Relationships
      • Documenting Relationships
      • Dealing with Many-to-Many Relationships
      • Relationships and Business Rules
      • Data Modeling Versus Data Flow
      • Schemas

      Chapter 5: The Relational Data Model

      • Abstract
      • Understanding Relations
      • Primary Keys
      • Representing Data Relationships
      • Views
      • The Data Dictionary
      • A Bit of History

      Chapter 6: Relational Algebra

      • Abstract
      • The Relational Algebra and SQL Example Database: Rare Books
      • The Sample Data
      • Making Vertical Subsets: Project
      • Making Horizontal Subsets: Restrict
      • Choosing Columns and Rows: Restrict and Then Project
      • Union
      • Join
      • Difference
      • Intersect

      Chapter 7: Normalization

      • Abstract
      • Translating an ER Diagram into Relations
      • Normal Forms
      • First Normal Form
      • Second Normal Form
      • Third Normal Form
      • Boyce–Codd Normal Form
      • Fourth Normal Form
      • Fifth Normal Form
      • Sixth Normal Form

      Chapter 8: Database Design and Performance Tuning

      • Abstract
      • Indexing
      • Clustering
      • Partitioning

      Chapter 9: Codd’s Rules for Relational DBMSs

      • Abstract
      • Rule 0: The Foundation Rule
      • Rule 1: The Information Rule
      • Rule 2: The Guaranteed Access Rule
      • Rule 3: Systematic Treatment of Null Values
      • Rule 4: Dynamic Online Catalog Based on the Relational Model
      • Rule 5: The Comprehensive Data Sublanguage Rule
      • Rule 6: The View Updating Rule
      • Rule 7: High-Level Insert, Update, Delete
      • Rule 8: Physical Data Independence
      • Rule 9: Logical Data Independence
      • Rule 10: Integrity Independence
      • Rule 11: Distribution Independence
      • Rule 12: Nonsubversion Rule

      Part III: Relational database design practice


        Chapter 10: Introduction to SQL

        • Abstract
        • A Bit of SQL History
        • Conformance Levels
        • SQL Environments
        • Elements of a SQL Statement

        Chapter 11: Using SQL to Implement a Relational Design

        • Abstract
        • Database Structure Hierarchy
        • Schemas
        • Domains
        • Tables
        • Modifying Database Elements
        • Deleting Database Elements

        Chapter 12: Using CASE Tools for Database Design

        • Abstract
        • CASE Capabilities
        • ER Diagram Reports
        • Data Flow Diagrams
        • The Data Dictionary
        • Code Generation
        • Sample Input and Output Designs
        • The Drawing Environment

        Chapter 13: Database Design Case Study #1: Mighty-Mite Motors

        • Abstract
        • Corporate Overview
        • Designing the Database

        Chapter 14: Database Design Case Study #2: East Coast Aquarium

        • Abstract
        • Organizational Overview
        • The Volunteers Database
        • The Animal Tracking Database

        Chapter 15: Database Design Case Study #3: SmartMart

        • Abstract
        • The Merchandising Environment
        • Putting Together an ERD
        • Creating the Tables
        • Generating the SQL

        Part IV: Using interactive SQL to manipulate a relational database


          Chapter 16: Simple SQL Retrieval

          • Abstract
          • Revisiting the Sample Data
          • Choosing Columns
          • Ordering the Result Table
          • Choosing Rows
          • Nulls and Retrieval: Three-Valued Logic

          Chapter 17: Retrieving Data from More Than One Table

          • Abstract
          • SQL Syntax for Inner Joins
          • Finding Multiple Rows in One Table: Joining a Table to Itself
          • Outer Joins
          • Table Constructors in Queries
          • Avoiding Joins with Uncorrelated Subqueries

          Chapter 18: Advanced Retrieval Operations

          • Abstract
          • Union
          • Negative Queries
          • The EXISTS Operator
          • The EXCEPT and INTERSECT Operators
          • Performing Arithmetic
          • String Manipulation
          • Date and Time Manipulation
          • CASE Expressions

          Chapter 19: Working With Groups of Rows

          • Abstract
          • Set Functions
          • Changing Data Types: CAST
          • Grouping Queries
          • Windowing and Window Functions

          Chapter 20: Data Modification

          • Abstract
          • Inserting Rows
          • Updating Data
          • Deleting Rows
          • Inserting, Updating, or Deleting on a Condition: MERGE

          Chapter 21: Creating Additional Structural Elements

          • Abstract
          • Views
          • Temporary Tables
          • Common Table Expressions (CTEs)
          • Creating Indexes

          Part V: Database implementation issues


            Chapter 22: Concurrency Control

            • Abstract
            • The Multiuser Environment
            • Problems with Concurrent Use
            • Solution #1: Classic Locking
            • Solution #2: Optimistic Concurrency Control (Optimistic Locking)
            • Solution #3: Multiversion Concurrency Control (Timestamping)
            • Transaction Isolation Levels
            • Web Database Concurrency Control Issues
            • Distributed Database Issues

            Chapter 23: Database Security

            • Abstract
            • Sources of External Security Threats
            • Sources of Internal Threats
            • External Remedies
            • Internal Solutions
            • Backup and Recovery
            • The Bottom Line: How Much Security Do You Need?

            Chapter 24: Data Warehousing

            • Abstract
            • Scope and Purpose of a Data Warehouse
            • Obtaining and Preparing the Data
            • Data Modeling for the Data Warehouse
            • Data Warehouse Appliances

            Chapter 25: Data Quality

            • Abstract
            • Why Data Quality Matters
            • Recognizing and Handling Incomplete Data
            • Recognizing and Handling Incorrect Data
            • Recognizing and Handling Incomprehensible Data
            • Recognizing and Handling Inconsistent Data
            • Employees and Data Quality

            Part VI: Beyond the relational data model


              Chapter 26: XML Support

              • Abstract
              • XML Basics
              • SQL/XML
              • The XML Data Type

              Chapter 27: Object-Relational Databases

              • Abstract
              • Getting Started: Object-Orientation without Computing
              • Basic OO Concepts
              • Benefits of Object-Orientation
              • Limitations of Pure Object-Oriented DBMSs
              • The Object-Relational Data Model
              • SQL Support for the OR Data Model
              • An Additional Sample Database
              • SQL Data Types for Object-Relational Support
              • User-Defined Data Types and Typed Tables
              • Methods

              Chapter 28: Relational Databases and “Big Data”: The Alternative of a NoSQL Solution

              • Abstract
              • Types of NoSQL Databases
              • Other Differences Between NoSQL Databases and Relational Databases
              • Benefits of NoSQL Databases
              • Problems with NoSQL Databases
              • Open Source NoSQL Products

              Part VII: Appendices

              Appendix A: Historical Antecedents

              Appendix B: SQL Programming

              Appendix C: SQL Syntax Summary


              No. of pages:
              © Morgan Kaufmann 2016
              22nd April 2016
              Morgan Kaufmann
              Paperback ISBN:
              eBook ISBN:

              About the Author

              Jan Harrington

              Jan L. Harrington, author of more than 35 books on a variety of technical subjects, has been writing about databases since 1984. She retired in 2013 from her position as professor and chair of the Department of Computing Technology at Marist College, where she taught database design and management, data communications, computer architecture, and the impact of technology on society for 25 years.

              Affiliations and Expertise

              Professor and Department Chair, Computer Science, Marist College, Hyde Park, NY, USA

              Ratings and Reviews