如何为可查询的可变列数设计表?

时间:2011-11-22 21:43:34

标签: xml json database-design metadata

我必须设计一个存储具有可变数量属性的产品的数据库,例如:

id:1,名称:培根,wg:2,包装:6,品牌:“肉类公司”。 ,国家:“加拿大”等

我可以设计一下:

    每个关键字的
  1. |id, keyword, value |,然后是一个疯狂的连接数,以便在表格中显示数据
  2. |id, col1,col2,col3,col4,metadata|然后使用XML或JSON
  3. 查询元数据
  4. 你的猜测
  5. 请指导我。

    注意:我正在使用LAMP和PERL

1 个答案:

答案 0 :(得分:1)

您可以定义包含产品的表和另一个包含产品属性的表。

产品属性表可包含3列。例如product_id,产品属性名称和值,因此您可以向此表添加n个产品特定属性。没有爆炸连接。

总结两个表。

Product 
 - Product_id
 - Product_name
Product Properties.
 - Product_id
 -Property_id
 -Property_name
 -Property_value

因此,基本上这种设计将允许您扩展产品的属性数量。