Sql-server – Are these tables in 3NF?

database-designdenormalizationnormalizationrelationssql server

Update: I updated the question to be more specific and also updated the diagram.

I am currently in my last semester, I did use SQL before then I left for MongoDB but the practice project requires to use some design patterns and only SQL. After understanding the concepts for normalization and relationships again, I designed the database and its tables before I start the code for the application.

Primary Goal:
Develop a Web Application for online restaurant table booking and food delivery.

DB Requirements:

  • DB must apply RDMS concepts
  • DB must have appropriate normalization or denormalization
  • ERD must have propper annotations

What I built:

What I tried to use during design:

  • 1NF

  • 2NF

  • 3NF

  • Relationships

So far I am not sure if I have made any mistake, I wanted to ask for a review from experts if these tables are indeed in 3NF. I am also thinking to understand more about BCNF, 4NF, 5NF and 6NF and use them if possible.

Any help is appreciated.



Business Requirements: "Removed because it was unnecessary"

P.s. PartyID = CustomerID or RestaurantID