Continue in 2 seconds

What is the third normal form of bookSBN, bookTitle, FirstAuthor, Publisher, PubStreet, PupCity, PubContact,Pages, Price?

By
  • Chuck Kelley, Clay Rehm, Les Barbusinski
Published
  • January 08 2004, 1:00am EST
More in

Q:

What is the third normal form of bookSBN, bookTitle, FirstAuthor, Publisher, PubStreet, PupCity, PubContact,Pages, Price?

A:

Chuck Kelley’s Answer: Without a lot of questions about what each of these columns mean and how they are related, it is impossible to do a good third normal form. You may get many different answers based on what is perceived as the answer to questions. For example, you do not tell us whether the Publisher has more than one address. You have FirstAuthor which lends itself to the notion of multiple authors, but you have no mention for other authors. You do not provide a context around Price. Do you want to deal with discounts or is price the suggested retail price? Without answers to these and other questions, the answers provided may not be correct.

That said, I would probably have (there may be some strange things when you read this, but I am using your names…!)

Publisher – {pKey, Publisher, PubStreet, PupCity, PubContact
Book – {bookSBN, bootTitle, Pages, Price, pKey, aKey }
Author – {aKey, FirstAuthor}

However, if you need the ability of multiple authors, then the answer would be different. You would need an associative entity and change the Book entity.

Publisher – {pKey, Publisher, PubStreet, PupCity, PubContact
Book – {bKey, bookSBN, bootTitle, Pages, Price, pKey }
Author – {aKey, FirstAuthor}
AuthorBook – { bKey, aKey }

But all of this will be based on the requirements of your system.

Clay Rehm’s Answer: Using your attributes, I would have come up with the following entities and attributes:

View Rehm diagram

Les Barbusinski’s Answer: Without knowing the context, it’s hard to tell. As Number-5 said in the movie Short Circuit, "Need more input!" However, here’s a stab at it:

View Barbusinski diagram

I added some additional attributes for the sake of clarity. Please note that in this Visio notation, the arrows point to the "parent" in the relationship. Hope this helps.

Register or login for access to this item and much more

All Information Management content is archived after seven days.

Community members receive:
  • All recent and archived articles
  • Conference offers and updates
  • A full menu of enewsletter options
  • Web seminars, white papers, ebooks

Don't have an account? Register for Free Unlimited Access