【发布时间】:2012-03-19 20:29:11
【问题描述】:
如果我的数据库中有很多餐厅,并且每个餐厅都可以有午餐菜单、晚餐菜单或早午餐菜单,那么在餐厅表中使用布尔值是否有意义:
餐厅编号 |餐厅名称 |地址 |等等。 |午餐菜单 |晚餐菜单 |早午餐菜单
或者我应该创建一个菜单表,然后有一个 RestaurantMenu 表(多对多关系)
菜单 ID |菜单名称
1 |午餐菜单
2 |晚餐菜单
3 |早午餐菜单
【问题讨论】:
-
如果只有 3 个菜单栏有
bool类型,则无需创建另一个表 -
那么,一家餐厅可以有超过 1 个菜单,还是只提供这 3 个菜单之一?
-
老实说,这个问题的答案取决于您是否认为需要将其他菜单类型添加到数据库中。如果您确定涵盖了所有类型,那么拥有
bool列将非常易于使用和查询。但如果非要加一个意外的话,可能会很头疼。我提供了两个答案,展示了我用于扩展性的几种方法。
标签: mysql database database-schema