我对新的数据库结构有一些疑问。
1. 假设用户可以创建菜谱。每个食谱显然都会有几种成分。每个成分都有以下 4 个字段。
1. ingredients
2. quantity of ingredients
3. unit size of the ingredients
4. prep method for the ingredients
我一直在绞尽脑汁试图弄清楚如何构建它。我是否应该简单地创建四行并将每个输入包含到一个数组中并将其存储在它所属的行中?做到这一点的最佳且最有效的方法是什么?
2.如果您有一个描述字段和方向字段,其中字符长度未知,那么 blob 类型是否最好?
谢谢!
最佳答案
由于您的成分可能出现在许多食谱中,并且不同的食谱可能包含相同的成分,因此食谱和成分之间存在 N:N 关系。
另一方面,你有所谓的关系属性,所以我会尝试类似的东西:
- 菜谱表:菜谱
- 成分表:成分
- 配方 - 具有 - 成分关系:存储在表中:HAS_INGREDIENT,其中:数量、单位大小、预方法 是字段,其中 RECIPES 主键和 INGREDIENTS 主键是外键。
考虑以下 ER 图:
关于MYSQL 数据库结构 - 存储多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22896447/