博主信息
小威的博客
博文
71
粉丝
1
评论
1
访问量
50822
积分:0
P豆:487

611-商城商品数据表设计

2018年06月12日 19:38:41阅读数:1484博客 / 小威的博客/ 课外作业

商品数据表设计分析:先设计商品信息总表,再根据总表进行扩展关联出其它各表

1. 商品信息表 product

字段名称           类型                             注释

id                     int(10)                   主键(自增)      商品在数据库中的编码

cid                   int (10)                  分类                    关联product_cates表ID

title                 varchar(100)          商品名称

pro_no            varchar (20)           商品编码              随机生成的一个字符串

keywords       varchar(255)           关键字                  方便用户搜索

img                varchar(255)           商品主图               建议采用路径存储url

price              decimal (10,2)      商品最低价            为了吸引用户进入浏览 给出最低配置甚至配件价格

desc               varchar(255)           商品描述               商品简介,广告词等

pv                  int (10)                    点击量                  分析流量,统计数据

status             tinyint (1)               产品状态               状态:-1 已删除 0 下架 1 上架

add_time        int(10)                    发布时间               添加时间

pro_no:由于外部访问不允许显示商品在数据库中的真实编码,防止非法刷库,所以需要生成一个随机字符串商品编码

cid:分类ID与商品类目表的ID进行关联,后台再根据CID查询商品类目表中的ID来对应循环出分类属性


2. 商品类目表(商品分类)product_cates

字段名称           类型                             注释

id                     int(10)                  主键(自增)      

pid                   int(10)                  上级分类id            0为最高分类  1 为二级分类  数字越大 分类越后

ord                   int(3)                    排序

title                 varchar(50)            标签标题                分类名称

status             tinyint (1)                产品状态               状态: 0 正常  1 禁用

add_time        int(10)                    添加时间

PID和ORD 如果不分类或不排序 默认为0


3. 商品图片表 product_img   一般是商品有多图展示  甚至视频 而我们也单独用一个表来展示这一块

字段名称             类型                             注释

id                     int(10)                  主键(自增) 

product_id       int(10)                  商品ID                  关联product表ID

img                  varchar(255)         图片路径               建议采用路径存储url

add_time         int(10)                   添加时间

图片表我们也可以添加 图片名称 图片扩展名 图片大小  等属性字段,也可以忽略,但图片路径必填项

name                  varchar(255)         图片名称

ext                      varchar(255)         图片扩展名

size                     int(255)                 图片大小


4. 祥情描述contents 另外商品有个祥情描述,由于内容较多,减轻数据库访问压力,我们需要独立创建一个表  

字段名称             类型                             注释

id                     int(10)                  主键(自增) 

product_id       int(10)                  商品ID                     关联product表ID

contents          text                           商品祥情描述

这个表也是通过produt_id 来关联商品信息表的     如果一个商品多个图 就是多个图片的produt_id都一样的

以上4张表,基本上把商品基本信息组建完成了, 下面我们要写配置属性表,这个表相对比较复杂

一般电商做的产品类型众多,也就造成了产品属性的不同,如电子产品有内存,版本,但是鞋子就变成了材质,尺寸

所以我们必需要想办法让属性配置单独做出多个表来分配给各种不同类型的产品,而这个方法就是SKU

在电商中有SKU叫销售属性,就是根据不同的属性和属性值生成不同的SKU编码,便于电商系统识别商品库存


5. 属性名表 property_name

字段名称             类型                             注释

id                     int(10)                  主键(自增) 

cid                  int(10)                  所属类目ID    与商品信息表中的cid对应  与商品类目表中的ID对应 

title                 varchar(50)           属性名            例如:颜色  版本 尺寸

is_sale            tinyint(1)              是否销售属性:      0否  1 是

注:is_sale是否为销售属性 是指产品中有些属性会影响销售价格和库存    有些属性不会影响(如:重量,配送地区)也叫SUP


6. 属性值表 property_value

字段名称             类型                             注释

id                     int(10)                    主键(自增)

name_id          int(10)                   属性名称id              关联property_name表id

value                varchar(255)          属性值

img                  varchar(255)          属性图片


7. 商品 属性名  属性值 关联表 property

字段名称                       类型                             注释

id                                int(10)                    主键(自增)

product_id                 int(10)                   商品ID   关联product表ID

name_id                     int(10)                  类目属性名id  关联property_name表id

value_id                     int(10)                  类目属性值id  关联property_value表id

property表其实就是属性名表和属性值的合并   初看数据库认为此表与8表重复,其实不然,因为is_sale是否为销售属性,

如果不是销售属性,前端就可以直接读取此表数据,如果是销售属性就要读取sku表数据了


8. 商品库存量表 product_sku  此表为关键表,根据商品的属性和属性值来判定商品的价格和库存量

字段名称                       类型                                 注释

id                                int(10)                      主键(自增)

product_id                 int(10)                     商品ID   关联product表ID

properties                  text                             属性键值对:property_name:property_value 关联两张表的ID

price                           decimal (10,2)      商品价格

cost                           decimal (10,2)       商品成本          可有可无值

stock                          int(10)                     库存

weight                        int(10)                    重量:克

此表的关键点在于properties  此字段比较特殊text,可以把属性键和值一起放,属性键值对:property_name:property_value 关联两张表的ID 

对于 key,value 存储比较新颖,但是关键还是得看代码是怎么实现读取的

版权申明:本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!

全部评论

文明上网理性发言,请遵守新闻评论服务协议

条评论
  • php用session实现购物车的方法:首先创建前端代码实现加入购物车动作;然后在PHP文件中实现购物车的逻辑判断;接着根加载列;最后通过unset等函实现的删除或金额算即可。
    matlab是美国MathWorks公司出学软件,用于分析、无线通信、深度学习、图像处理与算机视觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。