I am supposed to be designing a database from an order form that is in 1NF, another in 2NF, and 3NF however I have been given feedback that my project has not met the requirements of 1NF, 2NF or 3NF forms and my professor will not get back to me in any kind of timely manner. The 1NF structure must contain 1 table, 2NF 3 tables, and 3NF 4 tables. Also calculated fields are to be left out of the tables for some reason according to the rubric.

Here is my sales order form
sales_order.png


From this I have extracted the following structures for 1NF, 2NF and 3NF respectively:

SalesOrder ( orderId (PK), customerId, firstName, lastName, address, apartment, city, state, zip, donutId, donutName, donutDescription, unitPrice, homePhone, mobilePhone, otherPhone )

///////////////

SalesOrder ( orderId (PK), donutId (FK), customerId(FK), donutTotal, orderDate )
Customer ( customerId (PK), firstName, lastName, address, apartment, city, state, zip, homePhone, mobilePhone, otherPhone )
Donut ( donutId (PK), donutName, donutDescription, donutPrice )



//////////////

SalesOrder ( orderId (PK), customerId (FK), donutId (FK), orderDate )
SalesItem ( orderItemId (PK), orderId (PK), donutId (FK), donutTotal )
Customer ( customerId (PK), firstName, lastName, address, apartment, city, state, zip, homePhone, mobilePhone, otherPhone )
Donut ( donutId (PK), donutName, donutDescription, donutPrice )



The results from the rubric state for 1NF: "The submission depicts the sales order form table to fulfill the first normal form requirement. The selected primary key does not depict the provided data in first normal form and the table is missing required fields"

For 2NF: "The submission depicts the order, customer and line item tables. The tables as depicted are not in 2nd normal form and do not include all required fields."

And 3NF: "The submission depicts four tables. The tables as depicted are not in 3rd normal form. The selected keys of some of the tables are incorrect and the tables are missing required fields."



From my understanding of normalization I have done exactly what is asked but for some reason my solution is being labeled incorrect. If anyone could point out a flaw in my normalization I would appreciate it immensely.