MySQL在2个表之间存在多列关系

时间:2013-08-13 08:06:41

标签: mysql relationships

我在一个表中有这个问题,其中有4列包含描述产品的术语。我想在我的应用程序中使这个术语可编辑(并且您可以添加更多),显然有4组。我创建了一个完全包含所有这些术语的表,但是产品表必须与术语表的ID创建4个关系。

这是一个很好的解决方案吗?

我不想为这些术语制作4个不同的表的主要原因是因为它们并不多,而且随着应用程序的进展,我们可能会有更多不同的术语组,从而添加了许多使数据库混乱的小表

有什么建议吗?

更新#1:这是我当前的架构http://i.imgur.com/q2a1ldk.png

2 个答案:

答案 0 :(得分:1)

拥有一个产品表和一个terms (product_id, terms_name, terms_description),您可以根据需要为每个产品添加任意数量的术语。您只需要使用特定的产品ID从条款表中检索所有条款。

答案 1 :(得分:0)

您可以尝试映射表:

apputamenti(id, ...)

term_map (apputamenti_id, term_id) 

terms (id, text, type) 

因此,您可以根据需要添加任意数量的字词。

或者,如果您想要再指定一个字段的映射,请更改:

term_map (apputamenti_id, term_id, map_type)

因此您可以使用map_type的枚举,例如enum(tipologia, feedback, target)或原始字段