View Full Version : relationship


emmily11
04-05-2003, 06:30 AM
hi could anyone help and tell me if the relationship is in 3rd normal form thanks emmily

Oldsoftboss
04-06-2003, 01:40 AM
Could you clarify the question
What is 3rd normal ?
Is the tblOrderDetails a join table for a many to many relationship ?
Dave

Pat Hartman
04-06-2003, 01:31 PM
No.
1. What is the relationship of tblDelivery to tblOrder?
2. Having both DeliveryNoteID and OrderID in tblOrderDetails can't be right. What relationship are you trying to represent here?
3. OrderDate, Invoiced, and PaidDate belong in tblOrder rather than tblOrderDetails since they occur once per order.
4. Unless you ALWAYS want the most recent price for a product, you will need to keep PricePerUnit in tblOrderDetails in addition to tblProducts. Copy the current price from the products table to the details table when the product is added to the order. This will allow the order to always show the price that was correct when the order was made rather than the present price which might be different.

A summary of the normal forms:

1st. Eliminate Repeating Groups and ensure that each attribute (field) is atomic (cannot be further divided). Make a separate table for each set of related attributes and assign a primary key to each table. If you have no appropriate candidate keys, use an autonumber.
2nd. Eliminate Redundant Data. If an attribute depends on only part of a multi-part key, move it to a separate table.
3rd. Eliminate Columns Not Dependant on the Primary key. If an attribute does not contribute to a description of the primary key, remove it to a separate table.

Oldsoftboss
04-07-2003, 02:14 AM
You may be able to help me Pat. Could you explain 3rd Normal :) Pleeeeese
Dave

Pat Hartman
04-07-2003, 02:49 PM
I added that summary for you Dave. I take it that it didn't help. Normalization is the process of properly assigning fields to tables and choosing appropriate keys for those tables. Third normal form is the third step in the process. If a table is said to be in third normal form, it is also in second and first normal forms. There are 5 levels to normalization. Most databases will perform satisfactorily if they are in third normal form. Very few require the fine tuning to go to fourth or fifth.

Take a look at the articles referenced here.

Where to find information regarding relational database design (http://support.microsoft.com/support/kb/articles/Q288/9/47.ASP)

Oldsoftboss
04-08-2003, 02:09 AM
Thanks Pat :)