乐优商场---- 商品规格存储方案

1 什么是商品规格

在这里插入图片描述

商品规格以商品分类分为不同的规格组,规格组下面又有很多的规格项以及对于的规格值,如图

在这里插入图片描述

比如:

在这里插入图片描述

规律是什么? 为什么这么做?

1.同一类(细颗粒度分类:比如 手机,电脑,洗衣机) 商品的规格项分组相同
2.同一类商品的规格项目是相同的 且规格项目是跟商品进行关联的
3. 不同商品的规格参数的值 是不同的

见表方案一:

使用多张表 key value的方式来存储

1、每一类商品有多个分组

2、每个分组有多个项

3、每个商品对应不同的规格参数
在这里插入图片描述

这样会存在隐形的问题:

1 需要创建多张表来描述规格参数之间的问题
2 查询时 需要复杂的sql语句
3 规格参数数据量太大 是商品信息的几十倍,数据量庞大,效率低
4 如果新添加的商品规格项发生改变, 之前的商品不变是不能实现的

方案二 使用规格模板

1 每一个商品分类会对应一个规格参数模板在这里插入图片描述

2使用模板

每个商品对应唯一的规格参数 再添加商品的时候,可以根据 规格参数模板,生成一个表单。 保存规格参数的时候,还可以生成规格参数的json数据,保存到数据库对应的表中。

3 实现流程

在这里插入图片描述

优点:

1. 不需要做多表管理
2. 如果要求新添加的商品规格项发生改变,之前的商品表 不变是可以做到的

缺点:

1.复杂的表单和json之间的转换, 对js和后台代码的编写要求较高。。。

总结

核心思路就是把弹性字段使用json存储,这样设计的优点是数据表结构稳定,不用在商品增加属性后增加字段, 缺点是商品数据的解析复杂,弹性字段需要在业务代码中进行处理,增加了业务代码的复杂度。

猜你喜欢

转载自blog.csdn.net/qq_43595647/article/details/89565328