商品规格的数据库设计和实现流程.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
商品规格的数据库设计和实现流程.docx

商品规格的数据库设计和实现流程——淘淘商城(十一)商品规格商品规格包括规格组合、规格项,规格项为规格组的成员。规格组|-规格项:规格值|-规格项:规格值规格组|-规格项:规格值|-规格项:规格值123456同一类商品的规格相同。方案一使用多个表存储商品规格。在已有的商品分类表和商品表的基础上,增加商品规格分组表、商品规格项表、商品规格值表。表设计商品表:tb_item列名类型键说明item_idbigintP商品idcat_idbigintF商品分类id商品分类表:tb_item_cat列名类型键说明cat_idbigintP商品分类id商品规格组表:tb_item_param_group列名类型键说明group_idbigintP商品规格组idgroup_namevarchar商品规格组名称cat_idbigintF商品分类id商品规格项表:tb_item_param_key列名类型键说明key_idbigintP商品规格项idkey_namevarchar商品规格项名称group_idbigintF商品规格组id商品规格值表:tb_item_param_value列名类型键说明item_idbigintP商品id(联合主键)key_idbigintP商品规格项id(联合主键)param_valuevarchar商品规格信息表关系查询语句查询某id商品信息,规格组、规格项、规格值:SELECT pg.group_name, pk.key_name, pv.param_valueFROM tb_item_param_value pvLEFTJOIN tb_item_param_key pk ON pv.key_id = pk.key_idLEFTJOIN tb_item_param_group pg ON pk.group_id = pg.group_idWHERE item_id = xxxxx12345678910缺点需要创建多张表来描述规格参数之间的关系。查询时需要复杂的sql语句查询。规格参数数据量是商品信息的几十倍,数据量十分庞大,查询时效率很低。商品参数变时需要改动多个表。方案二每一个商品对应一个规格参数的模板。[ { //规格组名称 group: 主体, // 组的规格项名称 params: [品牌,型号,颜色,上市年份,上市月份 ]}, { group: 网络, params: [4G,3G,2G ]}]12345678910111213141516171819202122添加商品时,根据规格参数模板生成表单,保存对应的规格参数的json格式。[ { //规格组名称 group: 主体, // 组的规格项名称 params: [ { k: 品牌, v: 苹果(Apple) }, { k: 型号, v: iPhone 6 A1589 }, { k: 颜色, v: 白色 }, { k: 上市年份, v: 2100 }, { k: 上市月份, v: 12 } ]}, { group: 网络, params: [ { k: 4G, v: 支持 }, { k: 3G, v: 支持 }, { k: 2G, v: 支持 } ]}]12345678910111213141516171819202122232425262728293031323334353637383940414243444546流程特点优点:?单表查询,不需要做多表管理。如果要求新添加的商品规格项发生改变,只需要变更模板,之前的商品还是按照之前的格式存储。缺点:?复杂的表单和json之间的转换。对js的编写要求很高。

文档评论(0)

zhangningclb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档