Database design is one of the most contentious issues in computer science. There is always a delicate balance to be struck between the strict academic rules that govern the design of relational databases and the real-world techniques that programmers apply to get the job done in a certain time frame. This book's goal is to coverfrom a "real-world" point of viewall of the essential elements in designing, modeling, and building efficient relational databases, while avoiding a dry, theoretical approach.
Author Louis Davidson explains the process of implementing a database--from generating tables and allowing access to these tables using Microsoft SQL Server 2000. This includes tackling data modeling (focusing on the IDEF1X notation), requirements gathering, normalization (beyond the Third Normal Form), and implementing tables, constraints, triggers, procedures, user-defined functions, and so on. Davidson provides a full and realistic case study that clearly illustrates the entire process, from the initial discussions of a client's needs, through development of a logical model, to a complete implementation of the system.
Chapter 1: Introduction to Database Concepts 1 Chapter 2: Gathering Information for a Database Project 13 Chapter 3: Fundamental Database Concepts 27 Chapter 4: Entities, Attributes, Relationships, and Business Rules 55 Chapter 5: Data Modeling 91 Chapter 6: Normalization Techniques 129 Chapter 7: Advanced Normalization Topics 165 Chapter 8: Ending the Logical Design Phase 191 Chapter 9: Planning the Physical Architecture 219 Chapter 10: Building the Basic Table Structures 245 Chapter 11: Declarative Data Protection 315 Chapter 12: Programmatic Data Protection 341 Chapter 13: Advanced Data Access and Modification 367 Chapter 14: Determining Hardware Requirements 459 Chapter 15: Completing the Project 511