Database Design for Males: 25th Anniversary Edition
Author: Michael J Hernandez
Editor: Addison Wesley
Audience: Database developers
Examiner: Kay Ewbank
As the title of this book suggests, this is a title that has stood the test of time, and this updated 4th edition has been reissued to celebrate its 25th anniversary.
This is a book that aims to teach database design from the start, assuming there is no existing experience in database design. One of the reasons the book has been in print for so long is that Hernandez writes in an accessible, jargon-free manner while walking the reader through the steps required to create a functional database design.
This edition has been updated, with some sections rewritten to reflect readers’ comments over the years on what they found tricky. Sample sections have been added and the interview discussion updated to reflect the current trend in online meetings.
In essence, however, the book retains the structure it originally had, being divided into three main parts – the relational database design, the design process, and other database design issues. There are more annexes than in the previous edition, including one on standardization.
The first part on Relational Database Design features relational databases, how we got to where we are now, what you are aiming for as your design goal, and what the terminology means. Hernandez has always been a firm believer in the convenience of database design, so he talks about records rather than tuples, and fields not columns.
The second part of the book covers the design process, and that takes up the majority of the book. Hernandez breaks the design process down into several main stages, starting with the idea of ”defining a mission statement and mission goals.” By this he means that a database designer should be clear from the start about what the database should do when it is finished. Scanning the current database comes next, and that could mean the paper database you are replacing.
Creating data structures is the next step, followed by relationships, business rules, views, and examining data integrity. Field specifications have their own chapter on topics such as field level integrity and the physical and logical elements – data types, lengths, uniqueness, required values. The relationships between tables are dealt with in the next chapter, and again, this topic is approached from a practical point of view rather than as an intellectual exercise. Business rules, views, and data integrity end this part of the book.
The final part of the book examines other database design issues, with a fun and useful chapter on bad design and what not to do, and another great chapter on when and how you can get around it. or break the “rules”.
The book ends with a set of good appendices covering design examples, design guidelines, documentation forms, and standardization, among other topics.
It is a book that has stood the test of time. Hernandez’s observations are as relevant as they were at the time of its writing. If you have to design a database, you could do a lot worse than read this book.
Database design for mere mortals