Database Programming :: Projects :: Normalize This
Problem
For each of the tables below you are to do the following:
- List the functional dependencies if they aren't already listed.
- Write the table in 1NF or explain why it is already in 1NF.
- Write the table in 2NF or explain why it is already in 2NF.
- Write the table in 3NF or explain why it is already in 3NF.
- Underline the primary key at each step.
- After writing the table in 3NF, list the foreign keys and which table holds their corresponding attribute.
Table One
Shipment (ShipNum, ShipperName, ShipperContact, ShipperFax, PackageNum, PackDepartureDate, PackArrivalDate, PackDestinaltionCity, PackShipCost, InsuranceValue, InsurerCompany, InsurerAddress)
FDs = {ShipNum --> ShipperName, ShipperContact, ShipperFax
PackageNum --> PackDepartureDate, PackArrivalDate, PackDestinationCity, PackShipCost, InsuranceValue, InsurerCompany
InsurerCompany --> InsurerAddress }
Table Two
Truck (TruckNum, TruckType, TypeDesc, TruckMiles, DatePurchased, TruckSerialNum, BaseCity, BaseState, BasePhone, BaseManagerName, ManagerPhone, BasePhone)
Assumptions: A truck is based at a single base and a base can be the base for many trucks.
Table Three
R (A, B, C, D, E, F, G, H, I, J)
FD = { A,B,C,D --> E, F, G, H, I J
B, C, D --> E, F
A --> G, H, I, J
E --> F
H, I --> J }