What do you understand by transitive dependencies? Define with an example any two problems that can take place in the database if transitive dependencies are available in the database.
Ans: Assume X, Y, and Z are the set of attributes. If X → Y and Y → Z afterwards the functional dependency X → Z is a transitive functional dependency. Alternatively, if a nonkey attribute is as well functionally dependent on the other nonkey attribute(s), then there is a transitive functional dependency. Transitive functional dependencies are as well cause the data redundancies and the other consequences. For instance, consider the subsequent relation:
CREATE TABLE CONTACTS
(CONTACT_ID NUMBER (5) PRIMARY KEY,
L_NAME VARCHAR (20),
F_NAME VARCHAR (20),
COMPANY_NAME VARCHAR (20),
COMPANY_LOCATION VARCHAR (50))
In the following relation, all the nonkey attributes are functionally dependent on the primary key, that is CONTACT_ID. But, there is as well a transitive functional dependency exists in the relation - CONTACT_ID COMPANY_LOCATION because CONTACT_ID → COMPANY_NAME and COMPANY_NAME →COMPANY_LOCATION. The result of transitive dependency, there are anomalies in the above relation like this:
- Insertion Anomaly - A new company cannot be inserted till a contact person has been assigned to that company.
- Deletion Anomaly - If a company has just only one contact person and is deleted from the table, we will lose the information about that company, as the company information is related with that person.
- Update Anomaly - If a company changes its location we will should make the changes in all the records in which the company name appears.