日期:2014-05-18  浏览次数:20495 次

表的设计问题
30W个不同产品,300个不同属性,每个产品可以有多个属性

目的:设计表,用以表示每个产品的属性。
我的想法是:
产品表
ID int
产品名 nvarchar
属性 binary(30) --用2进制的每一位代表属性的有无

属性表
ID
属性名
属性binary值

------------------
不知可行否?会存在哪些问题,还请指教

------解决方案--------------------
产品表t1
ID int
name varchar(长度自己定义)

属性表t2
id int
id_t1 int --对应t1表的id即可.
name varchar(长度自己定义)



------解决方案--------------------
可以。用这属性binary值

关联好了。
------解决方案--------------------
不行,这样设计无法查询,或者性能很差

------解决方案--------------------
一个产品表,

一个属性表,

一个产品属性对应关系表,多对多.
------解决方案--------------------
多對多,是不錯,但維護不夠直觀.