Beginning Database Design Solutions (Wrox Programmer to Programmer)

Beginning Database Design Solutions (Wrox Programmer to Programmer)
Authors
Rod Stephens
ISBN
0470385499
Published
10 Nov 2008
Purchase online
amazon.com

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.

Page 2 of 2
  1. Editorial Reviews
  2. Customer Reviews

Customer Reviews

.Net learner said

being a developer for 20yrs with pittiful database design skills
i decided to give a thorough look into how to design db solutions
This book covers it from idiot level.
I still call myself idiot level in db design- but an above avg idiot when
designing db's now if was forced into it with a gun next to my head :)


Robert Lee said
After spending 8 years writing software for a company that didn't work with databases, I recently found myself in need of writing a new app that uses a database for storage.

Several chapters go into an explanation of the different parts of the database, and key concepts that exist in relational databases. This was particularly helpful for me, having such a limited background with databases.

The book spends a lot of time on requirements gathering, and designing the db around the customer's needs (and potential future needs), as opposed to just the application's needs. Some of this was redundant for me personally, but I like the fact that this element was stressed so thoroughly.

The chapter introducing SQL queries is a bit short, but covers the basics (and the things that you will probably use 90% of the time) and points to several large web resources on the subject.

I am quite happy with this book. I feel that I have a much better understanding of the inner workings of the database components, along with an understanding of how to design and implement one. I'm sure that I will come back to particular sections of the book as I work through this project, and on future ones as well.

J. K. August said
Beginning Database Design Solutions (Wrox Programmer to Programmer)
Beginning Database Design Solutions (Wrox)
by Rod Stephens, Denver .Net user group member and speaker
ISBN: 978-0-470-38549-4, Published: 2008, Pages: 552

Author's Web Site complete URL and/or Author's E-mail Address
www.wrox.com
(search for Rod Stephens)

2008

ISBN 978-0-470-38549-4
Publisher's Name and Publisher's Web Site Page for this Book (complete URL),

Wrox
Wiley Publishing, Inc.
10475 Crosspoint Blvd.
Indianapolis, IN 46256
www.wiley.com

No Book Image available
Number of Pages: 510



Primary Category best for listing book, review categories and examples:
.NET, Visual Basic .NET, .NET Framework, Sequel Server, Access (Office)

Review Date (April 27, 2009)
Reviewer's Overall Star Rating (****): 5*'s (out of 5)



Reviewer's Name
J. K. August, 5915 Braun Way, Arvada, CO 80004
Reviewer's E-mail Address
[email protected]

Reviewer's Biographical or Current Information Statement

J.K. August is an engineer who uses databases to address engineering information management problems for design basis control in large facilities. (Although similar aspects apply as with some CAD/CAM, these are not CAD/CAM systems.)

Review

This book is pretty good for a rounded examination of designing databases. You need to know a little bit about databases and design to understand this book. I have been doing databases about ten years, as an ancillary job. I only know Access well, but I've been exposed to Foxpro, DB2/4, Oracle and Sequel Server. I've read all the standard discussions of database design in all the Access books. This book went beyond those, complementing what I knew very well.

The book looks at databases from the broad perspective of having many different users with more than one use requirement. It introduces user-focused techniques to keep designs founded on users' needs. These include extracting business rules, understanding user needs and translating user needs into business models. It also discusses common design patterns and building a data model. Some areas that it introduces most developers will want to blow off, but these are still necessary for developing excellent applications. These include techniques for mapping the design's data flows, user interactions, and unpredictable evolution paths.

My own database experience started working alongside much more capable developers than I. Most developers will not want to got through the mundane design steps cited here. They may attempt to dissuade their managers from doing so, based on the additional costs of mapping. Whether they will do this or not probably depends on the scope and quality of the application they design. Our own experience has been to work through these many issues internally, informally, over long periods of internal database use. It is highly unlikely a commercial developer will have the same luxury. Whether people opt to use the full set of tools, available, its comforting to know they are there. For those headed towards larger group database applications, this book clearly explains the levels of an application - front end, backend, and middleware. It explains the reasons for each, problems separately posed, as well as how they can link to web-based database applications.

I found the sections on database design basics as well as non-normalizing database designs review. Some of the information on table field layouts was useful, but may not reflect all users needs for comment text fields in complex, multipurpose applications. I found the sections on documenting and mapping user's needs most useful, as well as most distressing. I hate to go through these steps myself, and I'm much better than average developers at doing all the mundane documentation stuff.

For the first time, the book explained the causes of database bloat, weird queries and other anomalies that require database compaction and repair. Over the past ten years I've never fully appreciated why these are required. Furthermore, I've never had a good developer explain to me clearly why these happened or what database maintenance really did. This book did.

The author introduced a few of the more advanced database systems available free from shareware, Microsoft or other download sources. These included MySQL, and MS Sequel server, explaining the value and utility of each. He then introduces SQL - the query language. Though okay for an introductory course, introducing SQL ("See-kwill"), for Structured Query Language and the database applications didn't add anything for me. However, for someone truly new to databases I could see how that might really be great.

I would have like more information on large database application management, maybe even including how to rebuild a goofed up legacy database. On the other hand, for what it covered it did that very well, and I always want more. I really liked the sections on common data relationship models, common design patterns and building a database data model. I especially like the part for restructuring many-to-many relationships. This alone was worth the cost of the book.

Anyone with a year or two exposure building databases will find this very useful. You probably also need to be working on complex applications and multiple users databases. To read the book easily you must be either be very smart or have a couple years with Access under your belt. By getting more information on common ways to simplify and relate "many-to-many" relationships, this book is invaluable. It may also stimulate more thought on more careful data model development.

I found two annoyances that became distracting from an otherwise great book. One was the author's tongue-in-cheek style with some of the insider jokes he cites. One or two here and there would be okay, but more than five per chapter gets a bit irritating. (All right, I didn't count them!) The other was the superficial nature of the demo'ed exercises and code. I just can't get into some of these example databases. Okay, I realize my interests are very complex, so this criticism is unfair. Overall these weren't a problem.

I did not attempt to test the code because I wasn't interested in the types of code demoed, although I did go through the exercises mentally. I found no updates or other errata prior to reading the book, and of course because I didn't attempt to do the code I wouldn't know.

"This review originally published in its entirety on the Denver Visual Studio User Group web site, www.DenverVisualStudio.net. (c) All rights reserved."


DM said
I am the director (and sole employee) of a newly formed non-profit. I came to this book with little prior programming experience, and found it to be all I was looking for as far as designing a database to meet our foundation's needs. A real strength of the book is that the author walks you through a wealth of examples, and provides many more to think through on your own--all with answers in the back of the book. So it's almost guaranteed there will be something which matches or parallels what you are trying to do. I read the book straight through, and found the order in which the material was presented to be logical and very well thought out. I also appreciated the dry humor sprinkled throughout this book--I would often find myself perking up and smiling to myself through a subject which a lesser author could turn into tedium.

Leonard Ansin said
Database Design Solutions, By Rod Stephens is a book that offers "expert practical experience" to assist the reader in creating a flexible and robust database even if this is your first database. A database properly designed from the start will prove rewarding and beneficial to the users. A poorly designed database, will lead to continuing headaches and frustration for the developer and most likely lost customers.

The book is clear, well written and appeals to the readers. It covers a lot of ground in different chapters. It guides you in developing business rules, explains what normalization is and gives an overview of different types of databases such as Access, SQL and My Sql. It will direct you how to start SQL statements and query constructions.

My feeling is of all the chapters in the book, the best are Chapter 4, Understanding User Needs, Chapter 7, Normalization, Chapter 9, Common Design Patterns and Chapter 10, Common Design Pitfalls. These were the most informative that appealed to me.

No matter whether you are a beginner or an experienced Database developer, this book is a must for you. It will give you the basics to start the development correctly and if you are experienced, it gives you the support to be sure your doing existing databases correctly.

This book is a must read for anyone doing database development.

By Leonard Ansin (Waltham, MA USA)

You might also like...

Comments

Contribute

Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.” - Martin Fowler