Database Reference
In-Depth Information
encies complicate the model and make it difficult to determine how to retrieve values for
each attribute.
To resolve a hidden dependency, you will either need to remove the attribute that is a fact
about non-primary key attribute(s) from the model, or you will need to create a new entity
with a different primary key for the attribute that is dependent on the non-primary key at-
tribute(s).
As with 1NF and 2NF, we will find ourselves asking many questions to uncover hidden
dependencies. We can have another question template such as:
“Is [[insert attribute name here]] a fact about any other attribute in this same entity?”
So these are all valid questions for our employee example:
Is Employee Phone Number a fact about any other attribute in Employee ?
Is Organization Phone Number a fact about any other attribute in Department ?
Is Department Phone Number a fact about any other attribute in Department ?
Is Employee First Name a fact about any other attribute in Employee ?
Is Employee Last Name a fact about any other attribute in Employee ?
Is Department Name a fact about any other attribute in Department ?
Is Employee Start Date a fact about any other attribute in Employee ?
Is Employee Vested Indicator a fact about any other attribute in Employee ?
Note that Employee Vested Indicator may be a fact about Employee Start Date as Em-
ployee Vested Indicator can be calculated Y or N based upon the employee's start date.
The following figure shows the model in 3NF after removing the derived attribute Em-
ployee Vested Indicator.
Search WWH ::




Custom Search