【发布时间】:2019-06-20 14:28:07
【问题描述】:
我正在为食谱成本管理创建数据库架构,但遇到了一个我不知道如何最好地解决的问题。
我有一个表成分(Id_ingedients, Name_ingredients, ....) 我有一个表食谱(Id_recipe、Name_recipe、Type_recipe、....)
Type_recipe 是:Finished_recipe 或 Sub_recipe
我有一个转换表 Ingredient_recipe (Id_ingredients, Id_recipe)
现在我的问题是:配方可以包含成分(简单),但也可以包含子配方类型的配方! Sub_recipe 类型的配方也可以包含成分,也可以包含 sub_recipe。
我找到了一种解决方案,适用于一级 Sub_recipe:
我创建了一个表 Sub_recipe (Id_sub_recipe, Subrecipe name, ...) 和一个中间表 ingedients_sub_recipe(Id_sub_recipe,id_ingredients) 和一个表 sub_recipe_recipe(id_recipe,id_sub_recipe) 来链接配方和 sub_recipe
但是如果这个 sub_recipe 包含另一个 sub_recipe,这个架构就不起作用!!
我认为我在数据库设计上错了,你能帮我设计一下我的数据库架构吗?
谢谢
【问题讨论】:
标签: database database-design database-relations