Beginning Database Design Paperback – Dec 5 2005
Customers Who Bought This Item Also Bought
No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
Getting the download link through email is temporarily not available. Please check back later.
To get the free app, enter your mobile phone number.
From the Back Cover
Database design involves how to best structure the tables and queries that are used with databases in order to provide optimum performance, storage, manageability, and flexibility. With relational databases, you can use those tables to organize your data and retrieve information from your database. This book provides you with an easy-to-understand explanation of designing and building relational database models to do just that.
The numerous step-by-step examples and a helpful case study simplify a potentially complex subject and present it to you in an organized, understandable manner. You'll find out why relational database models became necessary in the first place, and how the relational database model was devised. Ultimately, you'll discover how to make much better use of your database by applying what you've learned about building the database model.
What you will learn from this book
- Basic concepts of relational database modeling
- The components of a relational database model
- Making normalization easier to use
- Advanced relational database modeling
- How to improve relational database model performance
- Describing tables during using analysis (WHAT needs to be solved)
- Refining tables and relationships using design (HOW to provide solutions)
- How to read and write data with SQL
- Create relational database models by applying business rules
Who this book is for
This book is for new database developers. No prior database or programming experience is required.
Wrox Beginning guides are crafted to make learning programming languages and technologies easier than you think, providing a structured, tutorial format that will guide you through all the techniques involved.
About the Author
Gavin Powell has a Bachelor of Science degree in Computer Science, with numerous professional accreditations and skills (including Microsoft Word, PowerPoint, Excel, Windows 2000, ERWin, and Paintshop, as well as Microsoft Access, Ingres, and Oracle relational databases, plus a multitude of application development languages). He has almost 20 years of contracting, consulting, and hands-on educating experience in both software development and database administration roles. He has worked with all sorts of tools and languages, on various platforms over the years. He has lived, studied, and worked on three different continents, and is now scratching out a living as a writer, musician, and family man. He can be contacted at email@example.com or firstname.lastname@example.org. His Web site at http://www.oracledbaexpert.com offers information on database modeling, database software, and many development languages. Other titles by this author include Oracle Data Warehouse Tuning for 10g (Burlington, MA: Digital Press, 2005), Oracle 9i: SQL Exam Cram 2 (1Z0-007) (Indianapolis: Que, 2004), Oracle SQL: Jumpstart with Examples (Burlington, MA: Digital Press, 2004), Oracle Performance Tuning for 9i and 10g (Burlington, MA: Digital Press, 2003), ASP Scripting (Stephens City, VA: Virtual Training Company, 2005), Oracle Performance Tuning (Stephens City, VA: Virtual Training Company, 2004), Oracle Database Administration Fundamentals II (Stephens City, VA: Virtual Training Company, 2004), Oracle Database Administration Fundamentals I (Stephens City, VA: Virtual Training Company, 2003), and Introduction to Oracle 9i and Beyond: SQL & PL/SQL (Stephens City, VA: Virtual Training Company, 2003).
Most Helpful Customer Reviews on Amazon.com (beta)
For example, I could not even guess how many times he explains that excessive normalization leads to poorer performance most of the time. I would guess he makes that point 30-50 times, and often 2-3 times on the same page. This is just one example, but the book is filled with fluff such as this.
There are also plenty of mistakes and awkwardly worded passages that make reading the book difficult. Many of the diagrams and examples could have been better chosen so as to reduce confusion.
So why did I give it 2 stars instead of 1? Well, there is *some* useful information in this book. I did learn some things from this book, but I'd like to stress that I don't think there is anything that I learned that I couldn't have learned from free sources on the internet. Take a look at [...] In addition to that link, do a search on "Entity Relationship Diagram", and you'll have learned 95% of what is in this book.
I almost feel bad making such a critical review, but on the other hand, I feel bad that I spent money on this book. I wish I had another title to recommend to you, but I've got to go looking myself for a replacement for this book.
It feels disjointed and poorly structured. The author seems to jump from one topic to the next. But probably the most significant problem is that the author uses terms and concepts before defining or describing them. I can only imagine how confused a true novice might be when reading some of this.
He talks about Online Transaction Processing and Data Warehousing without really defining them or giving examples that would help the reader understand what they're used for.
On page 10, there is a figure purportedly showing what a relational database model looks like. However, it uses symbols and lines that he does not explain till later in the book. Without explaining the symbols, what good is the diagram?
Many places, he talks about normalization before explaining what it is. In one spot where he starts to explain normalization, he writes, "Normal Forms beyond 3rd Normal Form are often ignored and sometimes even 3rd Normal Form itself is discounted." He does not explain what a Normal Form is.It's just text that will have no meaning at all to the reader.
He talks about tables and columns before adequately explaining what they are.
In Chapter 3, he covers simple datatypes. First, he explains what a fixed length string is. But in his accompanying diagram, he uses SQL constructs to explain it. The first line of his explanatory diagram is:
SQL> select country||','||fxcode||','||currency
As anyone with programming experience could tell you, explaining what a fixed-length string is is pretty straightforward. But for some reason the author ties it to a complex SQL example, even before he has explained anything about SQL itself.
I almost gave up on the book, but slogged through to the end. It does get a little more understandable, yet I sometimes struggled to figure out just what the author was trying to convey. I found several mistakes, and there is an awful lot of needless repetition.
There seemed to be several cases where the author said things like:
It's probably a bad idea to ever do X, Y, or Z
And then explained how to do X, Y, and Z. It also felt like the author did things like:
Explain how to do T
Note that it was probably a bad idea to do T
Explain how to undo T
Do yourself a favor and look through the book before buying it. Perhaps you'll find it more readable than I have.
That is fine if the system will be used by one user, but multiply that by 10 million unique users in 12 hours on an enterprise database, and one has a big problem.
One must always consider the purpose of the model, and how the data will be taken out of the model as well as data integrity, security and normalization.
What I liked:
- Good coverage of the basics - datatypes, ERD, keys, SQL, indexes, normalization, denormalization.
- Exercises at the end of most chapters.
- A case study for an online auction house.
What I disliked:
- The first two chapters can be skipped unless you are completely new to databases.
- The same information is repeated throughout the book sometimes within the same paragraph. While this can be an aid in helping people to learn a new topic it gets old fast.
- Some strange turns of phrase and typographic errors that required me to re-read sections of the book a few times before I understood what the author was saying.
- Not enough exercises.
Overall, a fair introduction whose effect is reduced by repetition and poor writing/editing.
Full disclosure: I received a complimentary copy of the book for review.
Look for similar items by category
- Books > Computers & Technology > Databases > Beginning & Introductory
- Books > Computers & Technology > Databases > Database Design
- Books > Computers & Technology > Networking & Cloud Computing > Network Administration > Storage & Retrieval
- Books > Computers & Technology > Software
- Books > Textbooks > Computer Science & Information Systems > Database Storage & Design