bengan 2008-06-17 12:13
浏览 216
已采纳

企业产品管理的数据库设计问题!!

现在需要设计一个产品管理的模块,但是我们厂生产的产品种类特别多而且不是每个产品的属性都是一样的。现在在数据库设计的时候遇到了很大问题,希望论坛里有人指教指教。

例如:
现在有3类(当然实际中最少也是300种)产品他们都有公用属性分别是“名称”、“单价”、“材质”;还有一些自带的专有属性
a类:“重量=1kg”、“高度=15cm”、“颜色=黑色”;
b类:“重量=2.5kg”、“光洁度=1”、“包装=普通”;
c类:“长=11cm”、“宽=5cm”、“颜色=灰色”、“周期=20h”;

现在的设计是用两个表保存记录
a表保存公用属性,设置字段:
id | 名称 | 单价 | 材质 | 特殊1 | 特殊2 | 特殊3 | 特殊4 | 特殊5 ...... 特殊15
1 a类 1 刚 1kg 15cm 黑色 null null null
2 b类 1.5 铁 2.5kg 1 普通 null null null
3 c类 1 铜 11cm 5cm 灰色 20h null null

b表保存特殊属性,设置字段:
id | aid | 属性名称 | 字段顺序(表示第几个特殊属性)
1 1 重量 1
2 1 高度 2
3 1 颜色 3
4 2 重量 1
5 2 光洁度 2
6 2 包装 3
7 3 长 1
8 3 宽 2
9 3 颜色 3
10 3 周期 4

这样保存产品信息,列表显示产品基本可以实现,但是程序比较麻烦,而且没有办法实现用特殊属性检索产品。
请给点意见!!!

  • 写回答

3条回答 默认 最新

  • iteye_7852 2008-06-17 14:27
    关注

    :x 这 个方法我用过,是可行的,那是很多年以前第一次独立开发的时候。
    你说的没法实现特殊属性检索产品,我感觉这个需求是否是客户需求待确定!

    如果非要放在一起,可以在a表加个大文本字段,把b表的结构转换成xml存进去,
    目前很多数据库支持xml的SQL查询。

    另外,程序肯定会麻烦,本来对你的设计没意见,但对你嫌程序比较麻烦很有意见。。
    做吧,做了就知道了,有些时候开始麻烦,以后轻松,而有些,开始轻松而以后麻烦到死

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题