Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I'm building an Online Food Ordering System with PHP and MYSQL, I need some help on the database design of the Menu. Please look at the design here Is the design good enough?

To hold the menu's for multiple restaurants, with multiple cusine? *Where One restaurant can have multiple menus,etc

enter image description here

share|improve this question
Welcome to DBA.StackExchange. Is your model good enough for what? We don't know your business rules so it is not possible to comment or critique. Please read the FAQ (dba.stackexchange.com/help) especially with respect to asking questions. Do you have some specific concerns with your model? –  Joel Brown Jun 10 '13 at 11:44
@JoelBrown sorry for improper question, I've edited the question –  user92961 Jun 10 '13 at 11:48
Ok, now give me an example that should show the relation between restaurant_id and menu_id. –  Mannoj Jun 10 '13 at 12:34
@Mannoj Table menu_category_item will be able to show the relation b/w restaurant_id and menu_id –  user92961 Jun 10 '13 at 12:40
Thanks for expanding your question, but it still doesn't ask about specific concerns or describe the business rules you are trying to model. It will be difficult for people to give advice without a more specific information about what you need to achieve. Some questions I have include why are you storing calculated values on item_rating instead of actual user rating transactions? How is the delivery timing supposed to work, especially if hours are split into lunch/dinner? What do you do if different restaurants have different prices for the same item? (hint: is menu_category_item 3NF?) –  Joel Brown Jun 10 '13 at 12:40

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.