我正在寻找设计数据库的最佳实践。
我有一个表“product_reviews”,其中包含以下列的产品评论: revID、revName、revText、revDate
现在我想在产品评论中添加优点和缺点。产品评论最多可以有 5 个优点和 5 个缺点。
最佳实践是什么? 要向我现有的product_reviews 表添加 10 列(revPro1、revPro2 等)或创建一个新的单独表来保存这些优缺点?
最佳答案
根据规范化规则,您必须创建单独的表。此外,我建议在表中记录每个优点/缺点,而不是包含“pro1”、“pro2”等列的表,这也与标准化有关。
从实际角度来看,让我们假设稍后您需要在每次评论中了解更多优点/缺点。使用这种方法,您不需要更改数据库结构(一段时间后这可能会非常困难)。另一个例子可能是对优点/缺点应用一些文本限制 - 您必须仅将其应用于 1 列,而不是 10...
关于mysql - 每行值数量有限的数据库设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31243286/