为酒店菜单设计数据库

问题描述 投票:-1回答:2

我有一个表,称为酒店,这是模式

tables(type, id, name, description, menu, address)

我可以轻松地存储类型,ID,名称,描述和地址。它们都是字符串和整数。

考虑一下,大约100家酒店的价值各不相同。

但是菜单呢?我该如何储存?菜单将如下所示:

Pasta : 10 euros
HamBurger : 5 euros
#similarly many items in the menu

有人可以告诉我如何存储吗?请尝试详细解释。我一点都不明白。我尝试将菜单存储在其他表中,而酒店的id充当外键,但这使我只为菜单写了100个表。

mysql database-design relational
2个回答
0
投票

我想说您为所有可能的菜单创建了一个表(“ pasta”,“ burger”,..),第二个表将它们链接到酒店

例如:菜单(menu_id,名称,价格)hotels_menus(hotel_id,menu_id)

要查找给定酒店的所有菜肴,您可以通过“从hotel_menus选择hm.name,m.price,从hm的INNER JOIN菜单中选择hm.hotel_id = [hotel_id]和hm.menu_id = m.menu_id来检索它们”] >

如果每个酒店的价格不同,则将价格字段移动到hotels_menus表。


0
投票

实际上,您还需要一个类别字段,例如开胃菜,主菜等。您甚至可能需要更多]

© www.soinside.com 2019 - 2024. All rights reserved.