How do I explain normalization to someone who doesn't understand?

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I have to write about explaining normaliztion, but I'm not sure if I
understand it myself. Can anyone help?
 
Here is a good example:

I have a table that has 300 individual sites. I want to put the addresses of
the owners in the table for each site. That would be great if each site had
an individual owner, but some sites are owned by the same company, let's say
150 are owned by XYZ corp. Rather than put the address in 150 times, I will
normalize the data and create an ownership table, it will have site number,
and owner and address ONCE. Then when I link the tables via a query, it will
list each site and owner adress 150 times. Does that make sense?
 
I teach a 15 week college course on Database Design and Implementation. I
spend approximately half of that explaining normalization. That's
approximately 20 contact hours. It's not an easy topic to cover. Here are
some links that might help.

http://www.datamodel.org/NormalizationRules.html
http://support.microsoft.com/default.aspx?scid=kb;en-us;q209534
http://support.microsoft.com/default.aspx?scid=kb;EN-US;164172

Now, applying the Rules of Normalization is not the only way to design a
database. Michael Hernandez has a book called "Database Design for Mere
Mortals" that refers only fleetingly to normalization. However, if you
follow his process, you WILL end up with a fully normalized (3rd Normal
form) database design. Basically he translates the normalization process
into something that non-theoreticians can follow.

--
--Roger Carlson
Access Database Samples: www.rogersaccesslibrary.com
Want answers to your Access questions in your Email?
Free subscription:
http://peach.ease.lsoft.com/scripts/wa.exe?SUBED1=ACCESS-L
 
How would you set up a database for your collection of movie DVD's? At
first, it would appear that you could just use an Excel spreadsheet. Each
movie has one title, one date of release. You could then just sort by movie
title, or date of release, depending on how you want to look up information.

However, what if you want to keep track of the actors that are in the movie?
You could just put those names in extra columns, but then you would have to
sort multiple times, once for each column, to find a particular actor's name.

Normalization is a process where you limit the data, so that you don't have
duplicate information entered. In a DVD database, you would have a table
that includes the title and date of release, and another table that includes
the names of actors. You then have a third table that will combine a unique
movie with a unique actor. You could have some movies that do not match with
any actors, or movies that match with 20 actors. You do not need to enter
movie names more than once, or actor's names more than once. They are
normalized.

You can now sort by movie, and see all the actors associated with that
movie, or sort by actor, and see all the movies associated with that actor.

Normalization is what separates a database from a spreadsheet. In a
spreadsheet, you have to duplicate information, and some types of information
will be difficult to search, sort or filter on. A spreadsheet requires that
data be stored in rows and columns, with one piece of data per cell. A
database allows you to "stack" data quickly and efficiently, and place many
pieces of data into what would be a single cell on a spreadsheet.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top