FDs are found from the content of the three tables, respectively. Again, the example is only to show what the FDs are, but is unusual. |
T
with two sets of attributes X = A1 A2 ... Ak
and Y = B1 B2 ... Bm
, X→Y
or X
functionally determines Y
if
T
cannot agree in value on the attributes of X
and simultaneously disagree in value on the attributes of Y
, or
r1
and r2
in a table T
if r1(Ai)=r2(Ai)
for every Ai
in X
, then r1(Bj)=r2(Bj)
for every Bj
in Y
.
For example, one set of the FDs of the data items given on the right is listed below: |
|
emp_id → emp_name emp_phone dept_name
dept_name → dept_phone dept_mgrname
skill_id → skill_name
emp_id skill_id → skill_date skill_lvl
An optimist sees a glass half full. A pessimist sees a glass half empty. A chemist sees a glass half full of liquid and half full of air. |