配方数据库扩展
Recipe Database extended
我正在进行一个以该数据库为后端的项目。我有一些关于我正在努力解决的设计方面的问题。
这是我目前的设计:
Recipe(id, name, description, time, serving, skill)
Ingredient(id, name, type, description, BaseAmount, AmountType, cost)
RIngredient(RecipeID, IngredientID, AmountNeeded, amount type)
RStep(RecipeID, StepNo, Step description)
Meal(MealID, RecipeName, RecipeServing)
Inventory(InvID, IngredientID, IngredientName, IngredientCost, AmountNeeded)
Timetable(Day, Breakfast, Lunch, Dinner)
这顿饭 table 是为了能够将数据存储到时间中 table,但是这种设计是否可行,因为将来如果这顿饭煮熟时有不止一份,这顿饭应该储存起来,第二天或最多 2 天食用。因此,有效利用成分。
库存是为了跟踪已购买的物品并计算剩余的成分。这样一来,如果有剩余的成分,可以通知用户,这样他们下次就不必购买那么多了。
我还希望能够为该食谱实例添加或删除其他成分。这将作为 sql 语句 delte/update 完成,还是需要单独的 table。
如果您对设计或您认为效果更好的任何内容提出任何意见,我们将不胜感激。
A Recipe
生产了一些份量 -- 这就是您所说的 serving
的意思吗?
你可以制作一个 "double recipe" 或者,也许,一个 "half recipe",所以需要指定一些东西 'factor'。
因此,您需要另一个 table 来指示 "making a recipe";我将其命名为 Batch
,RecipeId
factor
,datetime
。
一个 Meal
由多个事物组成,因此您需要在 Meal
和膳食中涉及的每个批次之间进行多对多映射 table。
你不能把剩菜冷冻起来吗?所以 "a day or 2" 基本上是无关紧要的。但是你的冰箱里会有 Servings
的库存。
我不知道你要去哪里Timetable
;大部分信息 can/should 在 Meal
.
中
在 Inventory
中减去 5 磅面粉时,转换 "cups" 的花很有趣。
我正在进行一个以该数据库为后端的项目。我有一些关于我正在努力解决的设计方面的问题。
这是我目前的设计:
Recipe(id, name, description, time, serving, skill)
Ingredient(id, name, type, description, BaseAmount, AmountType, cost)
RIngredient(RecipeID, IngredientID, AmountNeeded, amount type)
RStep(RecipeID, StepNo, Step description)
Meal(MealID, RecipeName, RecipeServing)
Inventory(InvID, IngredientID, IngredientName, IngredientCost, AmountNeeded)
Timetable(Day, Breakfast, Lunch, Dinner)
这顿饭 table 是为了能够将数据存储到时间中 table,但是这种设计是否可行,因为将来如果这顿饭煮熟时有不止一份,这顿饭应该储存起来,第二天或最多 2 天食用。因此,有效利用成分。 库存是为了跟踪已购买的物品并计算剩余的成分。这样一来,如果有剩余的成分,可以通知用户,这样他们下次就不必购买那么多了。
我还希望能够为该食谱实例添加或删除其他成分。这将作为 sql 语句 delte/update 完成,还是需要单独的 table。
如果您对设计或您认为效果更好的任何内容提出任何意见,我们将不胜感激。
A Recipe
生产了一些份量 -- 这就是您所说的 serving
的意思吗?
你可以制作一个 "double recipe" 或者,也许,一个 "half recipe",所以需要指定一些东西 'factor'。
因此,您需要另一个 table 来指示 "making a recipe";我将其命名为 Batch
,RecipeId
factor
,datetime
。
一个 Meal
由多个事物组成,因此您需要在 Meal
和膳食中涉及的每个批次之间进行多对多映射 table。
你不能把剩菜冷冻起来吗?所以 "a day or 2" 基本上是无关紧要的。但是你的冰箱里会有 Servings
的库存。
我不知道你要去哪里Timetable
;大部分信息 can/should 在 Meal
.
在 Inventory
中减去 5 磅面粉时,转换 "cups" 的花很有趣。