Reputation: 2535
I am reading a Database Normalization tutorial and I am having difficulty understanding the following:
Functional dependency says that if two tuples have same values for attributes A1, A2,..., An, then those two tuples must have to have same values for attributes B1, B2, ..., Bn.
Functional dependency is represented by an arrow sign (→) that is, X→Y, where X functionally determines Y.
What do the above two refer to? What is meant by "Functionally Determines"?
I can have a tuple where A1, A2, A3 are same but B1, B2, B3 are different.
Upvotes: 2
Views: 586
Reputation: 2878
A functional dependency occurs when one attribute in a relation uniquely determines another attribute. This can be written A -> B which would be the same as stating "B is functionally dependent upon A."
In a table listing employee characteristics including Social Security Number (SSN) and name, it can be said that name is functionally dependent upon SSN (or SSN -> name) because an employee's name can be uniquely determined from their SSN However, the reverse statement (name -> SSN) is not true because more than one employee can have the same name but different SSNs.
Upvotes: 6