If one wants to store multiple telephone numbers for a student,
then one must create a separate relation for that purpose. Then each tuple in the new PhoneNumber relation
can have a single telephone number, and multiple tuples in the PhoneNumber relation can be associated via
a 1:N relationship with a particular student.
Second normal form requires that every nonkey attribute be functionally dependent on the entire key. Said
another way, each nonkey attribute value must provide a fact about the entity as a whole, not a fact about a part
of the key. If the key of a relation is a single attribute value, for example a surrogate key, any relation is
automatically in 2NF. All the nonkey attributes are dependent on (i.e., determined by) the key.
Without thinking too much about it, anyone might think that the Student relation is a reasonable design for
a database that will track students. On closer reflection, however, note that the relation includes information
about resident advisors (RAs), and faculty advisors, as well as about students.
Is every non-key attribute in the Student relation dependent upon (determined by) values of the entire key?
In this case, the answer is ???No.??? Assuming that there is one RA per Dorm, then the value of RA depends upon
Dorm, but not upon Sname.
Pages:
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409