170 likes | 185 Views
Avoiding Database Anomalies. Unnormalized Relation. 3a. First Normal Form (1NF). A relation is in first normal form if it does not contain repeating groups. Unnormalized Relation. First Normal Form (1NF). Changes to service names have to be made on each line on which the the name appears.
E N D
3a. First Normal Form (1NF) A relation is in first normal form if it does not contain repeating groups.
First Normal Form (1NF) Changes to service names have to be made on each line on which the the name appears.
First Normal Form (1NF) Inconsistent data could result when the same service name has several name variations.
First Normal Form (1NF) New services can not be added unless there is an existing transaction.
First Normal Form (1NF) Deletion of an invoice could result in a loss of service information.
Second Normal Form (2NF) A relation is in second normal form if it is in first normal form and there are no partial dependencies. A partial dependency occurs when a table has a composite primary key and a non-key attribute is dependent on only part of the primary key.
Relations in Second Normal Form (2NF) Changes to customer names have to be made on each line on which the customer appears.
Relations in Second Normal Form (2NF) Inconsistent data could result when the same customer has several name variations.
Relations in Second Normal Form (2NF) New customers can not be added unless there is an existing transaction for the customer.
Relations in Second Normal Form (2NF) Deletion of an invoice could result in the loss of customer information.
Third Normal Form (3NF) A relation is in third normal form if it is in second normal form and there are no transitive dependencies. A transitive dependency occurs when a table has a non-key attribute that is dependent on another non-key attribute.
Table Relationships 1-M Relationship REVENUE TRANSACTIONS CUSTOMER ACCOUNTS Invoice # Transaction Date Customer # Customer # Customer Name Foreign Key M-N Relationship REVENUE TRANSACTIONS SERVICES Invoice # Transaction Date Customer # Service Type # Service Name Hourly Rate 1 1 Bridge Table REVENUE TRANSACTION LINES M M Invoice # Service Type # Hours