Database 食物订购中的菜肴定制

Database 食物订购中的菜肴定制,database,Database,我想确定某个特定零件的设计是否正确。 情况是: 比萨饼可以根据大小、配料、外皮等定制,但配料的价值取决于大小;如选择7号,则每件上衣的奖金为1美元,14号的奖金为2美元,或者其他定制可依赖于其他定制 其中一种定制只能用于特定尺寸;与选择尺寸7时一样,仅显示另一个自定义项。 这个场景只是一个例子,除了比萨饼之外,还有很多东西需要定制,因为它是一个食品订购应用程序 目前针对这个问题,我设计了3个表: 盘号、名称、说明、底价 自定义C_id、d_idforeign密钥、名称 选项O_id、c_id外键

我想确定某个特定零件的设计是否正确。 情况是:

比萨饼可以根据大小、配料、外皮等定制,但配料的价值取决于大小;如选择7号,则每件上衣的奖金为1美元,14号的奖金为2美元,或者其他定制可依赖于其他定制

其中一种定制只能用于特定尺寸;与选择尺寸7时一样,仅显示另一个自定义项。 这个场景只是一个例子,除了比萨饼之外,还有很多东西需要定制,因为它是一个食品订购应用程序

目前针对这个问题,我设计了3个表:

盘号、名称、说明、底价 自定义C_id、d_idforeign密钥、名称 选项O_id、c_id外键、父项id、名称、价格 定制表将保存定制名称,如大小、外壳、浇头等。 选项表将保存每个自定义项的内容。 选项中的父项id将参考选项表,因为浇头价格将取决于所选选项的大小

例如:

有没有更好的方法在db中表示这一点。 请大家尽快回复,并建议我在设计中应包括的任何其他更改或功能,除了此部分。 这将是伟大的,如果任何有用的链接提供


谢谢。

选项表中的家长id是菜品表中d\U id的外键吗?

否。家长id将参考选项表。如果我错了,请告诉我。。。。。每道菜的选择价格可能会有所不同。。。所以菜品和选择之间应该有关系…不。对于每道菜,可以有许多自定义项,对于每个自定义项,可以有许多选项。菜和自定义项是相关的,自定义项和选项是相关的
1) dishes
id name 
1 pizza
2) customization
c_id d_id name
1 1 size
2 1 toppings
3) options
o_id c_id parent_id name price
1 1 1 7" 5$
2 1 2 14" 10$
3 2 1 abc 1$
4 2 2 abc 2$