Re: What are Closing and Normalization?

From: Jonathan Leffler <jleffler_at_earthlink.net>
Date: Sat, 11 Jan 2003 23:30:30 GMT
Message-ID: <3E20A87E.1000203_at_earthlink.net>


Jim Kennedy wrote:
> Search google for Codds rules.

They don't really discuss either subject. See, for example:

http://www.itworld.com/nl/db_mgr/05072001/

Rule 1 does require tables in first normal form (1NF), but it places no constraints on them for the higher normal forms.

> example:
> table with employees
> emp_id
> employee_name
> address,
> date of birth
>
> table of pay for employees
> employee_name
> date
> amount
>
> employee_name is repeated and thus is redundant data.

Beg to differ - or there's a typo above.

If the pay table contained 'emp_id, employee_name, date, amount' and if 'emp_id' was sufficient to identify an employee uniquely, then the pay table contains redundant data. As quoted, though, there's an assumption that employee_name is a unique employee identifier, and no redundancy. Note that the primary key on the pay table would probably be the combination 'emp_id, date', and the primary key on the employees table would be just 'emp_id'.

One link I've got saved on normalization is: http://www.gslis.utexas.edu/~l384k11w/normover.html

> "it" <it_at_it.com> wrote:

>> I wih somebody could explain the two things in short; For No 1 I
>> have no clue and for No2 I read it is about elimination of 
>> redundant data from tables but I would like to see/hear an
>> example of this,

I suspect that the 'closing' referred to should be 'closure'. Put simply (and hence non-rigorously), closure is the property of the relational algebra (or calculus) which says that all results from relational operations on tables are themselves tables. It is similar to the closure property of arithmetic, where the result of a computation involving numbers is another number (with exceptions for divide by zero and maybe other odd-ball cases).

-- 
Jonathan Leffler                   #include <disclaimer.h>
Email: jleffler_at_earthlink.net, jleffler_at_us.ibm.com
Guardian of DBD::Informix 1.04.PC1 -- http://dbi.perl.org/
Received on Sun Jan 12 2003 - 00:30:30 CET

Original text of this message