Beginning Database Design, Second Editionprovides short, easy-to-read explanations of how to get database design right the first time. This book offers numerous examples to help you avoid the many pitfalls that entrap new and not-so-new database designers. Through the help of use cases and class diagrams modeled in the UML, youll learn to discover and represent the details and scope of any design problem you choose to attack. Database design is not an exact science. Many are surprised to find that problems with their databases are caused by poor design rather than by difficulties in using the database management software. Beginning Database Design, Second Editionhelps you ask and answer important questions about your data so you can understand the problem you are trying to solve and create a pragmatic design capturing the essentials while leaving the door open for refinements and extension at a later stage. Solid database design principles and examples help demonstrate the consequences of simplifications and pragmatic decisions. The rationale is to try to keep a design simple, but allow room for development as situations change or resources permit. Provides solid design principles by which to avoid pitfalls and support changing needsIncludes numerous examples of good and bad design decisions and their consequencesShows a modern method for documenting design using the Unified Modeling LanguageWhat youll learnAvoid the most common pitfalls in database design. Create clear use cases from project requirements. Design a data model to support the use cases. Apply generalization and specialization appropriately. Secure future flexibility through a normalized design. Ensure integrity through relationships, keys, and constraints. Successfully implement your data model as a relational schema. Who this book is forBeginning Database Design, Second Editionis aimed at desktop power users, developers, database administrators, and others who are charged with caring for data and storing it in ways that preserve its meaning and integrity. Desktop users will appreciate the coverage of Excel as a plausible database for research systems and lab environments. Developers and database designers will find insight from the clear discussions of design approaches and their pitfalls and benefits. All readers will benefit from learning a modern notation for documenting designs that is based upon the widely used and accepted Universal Modeling Language. Table of ContentsWhat Can Go Wrong?Guided Tour of the Development ProcessInitial Requirements and Use CasesLearning from the Data ModelDeveloping a Data ModelGeneralization and SpecializationFrom Data Model to Relational SchemaNormalizationMore on Keys and ConstraintsQueriesUser InterfaceOther Implementations.