First Normal Form (1NF):
You need to have a "Proper" relation. That means the table should have no "repeating groups" of fields, and have a valid Primary Key. A repeating group is when you repeat the same basic attribute (field) over and over again. A good example of this is when you wish to store the items you buy at a grocery store:
| Item Table | ||||
| Customer | Item #1 | Item #2 | Item #3 | Item #4 |
Each field named "Item #n" is basically the same "thing" as the previous cell. Each cell is (in general) just "an item that I am buying" It makes no difference that each "Item" may be a different specific "Item." They are all groceries. This is a repeating group. To get rid of it, you need to rename the field to just "Item." You may then list all of the indivdual items under this fieldname, while repeating the customer name for as many items as were purchased.
| Item Table | |
| Customer | Item |
| Joe | Bread |
| Joe | Milk |
| Joe | Butter |
| Mary | Bread |
| Mary | Pizza |
The "no repeating group" rule guarantees that you do not have a three dimensional table. That's what the repeating group in the example really was. You have the urge to store the Customer once, then Items in a second column that could be thought of as extending back into a third dimension.
Now, you need a "valid primary key." This is just to guarantee that every row will be unique from any other row. You need to look to see what field, or comination of fields, will make each row unique. In our example, Customer alone will not be good enough. If we add Item, then it will work. Make sure that you underline the fields that are the PK in your table to clearly designate what the PK is.
© Ken Gibson