我有一个用于存储产品的表,并且在同一表中存储了我希望产品位于的类别的ID。
我的产品表如下所示:
id | product_name | category_id | price
然后我有我的类别表:
id | category
我的问题是知道如何在我的category_id中插入多个类别,以及是否可以。
如果没有,我能做到的最好方法是什么?
最佳答案
有可能,但是您真的不想去那里。在99.99999%的情况下,在单个datarow列中存储多个值是一个糟糕的主意。
有关更多信息,请阅读Is storing a delimited list in a database column really that bad?,您将在其中看到很多答案,为什么这个问题的答案是肯定的!
您要做的是添加另一个表来存储产品和类别之间的关系。这被称为多对多关系。
此新表应在一个列中包含产品ID,在另一列中包含类别ID,并具有一个复合主键,该主键是这两个列的组合。
这样,您可以在同一类别中拥有许多产品,并且同一产品可以具有许多类别。