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

关于几个相关连的表结构设计的问题.
准备在数据库中建立一个产品库.基本表结构是这样的.

产品表:产品ID,产品名称....产品介绍等.
产品属性表:属性ID,产品ID(各产品的属性可能是不一样的,比如有些产品有:转速,高度,有些产品有:密度,耐性.)
属性值表:属性ID,属性值(属性表可能有多个,如:[int],[char],[text]分别存储以上产品属性对应的值,比如高度的值是int型的,就存在[int]表里,属性值为字符型的就存在[char]表里....)

这样的表结构设计出来我觉得读取起来会非常缓慢,请问各位高手,有什么更好的结构设计方案吗.

------解决方案--------------------
--------仅供参考

属性值表和产品属性表 合并到一起

属性表可能有多个,如:[int],[char],[text]分别存储以上产品属性对应的值

统一为varchar 或者text

int 型的属性值也不会用来加减运算吧
------解决方案--------------------
同意楼上的[int],[char],[text]统一为varchar 或者text.


这样总共3张表,并且[产品属性表]与[产品属性值表]中产品名称不需要.