A PHP Error was encountered

Severity: 8192

Message: Methods with the same name as their class will not be constructors in a future version of PHP; Waterfall_Cache has a deprecated constructor

Filename: _common/waterfall_cache.php

Line Number: 47

A PHP Error was encountered

Severity: 8192

Message: Methods with the same name as their class will not be constructors in a future version of PHP; Cache_System has a deprecated constructor

Filename: _common/waterfall_cache.php

Line Number: 194

A PHP Error was encountered

Severity: 8192

Message: Methods with the same name as their class will not be constructors in a future version of PHP; Memcache_Cache_System has a deprecated constructor

Filename: _common/waterfall_cache.php

Line Number: 275

A PHP Error was encountered

Severity: 8192

Message: Methods with the same name as their class will not be constructors in a future version of PHP; Filesystem_Cache_System has a deprecated constructor

Filename: _common/waterfall_cache.php

Line Number: 440

A PHP Error was encountered

Severity: 8192

Message: Methods with the same name as their class will not be constructors in a future version of PHP; APC_Cache_System has a deprecated constructor

Filename: _common/waterfall_cache.php

Line Number: 628

Database Normalization Page 3

Database Normalization Page 3

By David Faour (Send Email)
Posted Feb 8, 2008


Third Normal Form prohibits transitive dependencies. A transitive dependency exists when any attribute in a table is dependent on any other non-key attribute in that table.

Consider the following example CourseSections Table:

CourseID Section

ProfessorID ProfessorName
3100 1 6789 David
1300 1 6789 David

The professor is uniquely identified by the CourseID and Section of the course. However, ProfessorName depends on ProfessorID and has no relation to CourseID or Section.

This data is properly stored as follows:

Professors Table
ProfessorID ProfessorName
6789 David

CourseSections Table
CourseID Section ProfessorID
3100 1 6789
1300 1 6789

By splitting the data into two tables, the transitive dependency is removed.

Taking the original design of the CourseSections table introduces the chance that ProfessorName may be Corrupted. Perhaps, on the second row the ProfessorName is entered as Davif, a simple typo. Since there is no such professor Davif, there would be a problem.

Original date of publication, 02/21/2001

Page 3 of 3


Comment and Contribute

Your name/nickname

Your email

(Maximum characters: 1200). You have characters left.


 

 


Thanks for your registration, follow us on our social networks to keep up-to-date