Published by: Sareena Kumari Basnet
Published date: 26 Jul 2024
Database anomalies are inconsistencies in data caused by operations such as updates, insertions, or deletions. Inconsistencies can occur when a record is held in numerous locations and not all copies are updated.
Anomalies in a database can be caused by excessive redundancy or poorly built tables.
Insertion Anomaly
This occurs when specific data cannot be added into a database due to the presence of other unnecessary data. For example, suppose a new student wants to be added to a database but they are not yet enrolled in any courses, and the database architecture requires a course enrollment for each student record.
Deletion Anomaly
Occurs when deleting data unintentionally causes the loss of other valuable data. For example, if a course is deleted from a database, which removes all students affiliated with that course, vital student information may be lost.
Update Anomaly
Occurs when a single data alteration needs to be performed numerous times to ensure consistency. For example, if an employee's address is recorded in numerous tables, altering the address necessitates amending it in each table where it appears, potentially leading to inconsistencies if any instance is overlooked.
The functional dependency is a relationship that exists between two attributes. It typically exists between the primary key and non-key attribute within a table.
X → Y
The left side of FD is known as a determinant, the right side of the production is known as a dependent.
For example:
Assume we have an employee table with attributes: Emp_Id, Emp_Name, Emp_Address.
Here Emp_Id attribute can uniquely identify the Emp_Name attribute of employee table because if we know the Emp_Id, we can tell that employee name associated with it.
Functional dependency can be written as:
Emp_Id → Emp_Name
We can say that Emp_Name is functionally dependent on Emp_Id.
Example:
Example: