This book is intended for IT professionals and students who want to learn how to design, analyze, and understand databases. The material will benefit those who want a better high-level understanding of databases such as proposal managers, architects, project managers, and even customers. The material will also benefit those who will actually design, build, and work with databases such as database designers, database administrators, and programmers. In many projects, these roles overlap so the same person may be responsible for working on the proposal, managing part of the project, and designing and creating the database.
This book is aimed at IT professionals and students of all experience levels. It does not assume that you have any previous experience with databases or programs that use them. It doesn’t even assume that you have experience with computers. All you really need is a willingness and desire to learn.
This book explains database design. It tells how to plan a database’s structure so the database will be robust, resistant to errors, and flexible enough to accommodate a reasonable amount of future change. It explains how to discover database requirements, build data models to study data needs, and refine those models to improve the database’s effectiveness.
The book solidifies these concepts by working through a detailed example that designs a realistic database. Later chapters explain how to actually build databases using two common database products: Access 2007 and MySQL.
The book finishes by describing some of the topics you need to understand to keep a database running effectively such as database maintenance and security.
This book explains database design. It tells how to determine what should go in a database and how the database should be structured to give the best results.
To remain database neutral, the book does not assume you are using a particular database so you don’t need any particular software or hardware. To work through the Exercises, all you really need is a pencil and some paper. You are welcome to type solutions into your computer if you like but you may actually find working with pencil and paper easier than using a graphical design tool to draw pictures, at least until you are comfortable with database design and are ready to pick a computerized design tool.
About the Author
Rod Stephens is a professional software developer who has built a wide variety of software and database applications in his 20-year career. He is the author of 18 books and more than 250 articles, and is a regular contributor to DevX.com (www.devx.com). Rod's clear, compelling writing makes it easy for less experienced readers to master new material. His current position as an adjunct instructor for ITT Technical institute has given him additional insight into the kinds of discussion, examples, and exercises that students find most helpful.
Table of Contents
I. Introduction to Databases and Database Design.
1. Golas of Effective Database Design.
2. Database Types.
3. Relational Database Fundamentals.
II. Database and Design Process Techniques.
4. Understanding User Needs.
5. Translating User Needs Into Data Models.
6. Extracting Business Rules.
7. Normalizing Data.
8. Designing Databases to Support Software Applications.
9. Common Design Patterns.
10. Common Design Pitfalls.
III. A Detailed Case Study.
11. User Needs and Requirements.
12. Building a Data Model.
13. Building a Relastional Model.
14. Extracting Business Rules.
15. Normalization and Refinement.
16. Microsoft Access.
IV. Advanced Topics.
18. Introdution to SQL.
19. Building Databases with SQL Scripts.
20. Databse Elements.
21. Database Security.
Appendix A. Exercise Solutions.
Appendix B. Sample Database Designs.
Appendix C. Glossary.
Most Helpful Customer Reviews
Most database books that I have seen focus on specific database management system software (SQL Server, MySQL, Oracle), SQL syntax, or ADO.NET. This book teaches you the steps to building a solid database, and it does not matter which database software you use. The underlying rules of creating databases are universal. You will, however, need to learn your database software and SQL syntax. I recommend getting familiar with your software and SQL, and then master the steps of building a solid, professional database using this book.