商品实体-电商数据库设计及优化学习笔记

一、背景

这里是我的电商数据库设计及优化学习笔记中商品模块设计的内容。主要是分析、设计了商品模块所设计的各种表。

二、商品实体设计

商品实体中包含的属性:
商品名称,过条码,分类,供应商,品牌名称,介个,成本,上下架状态,颜色,重量,长宽高,有效期,生产时间,描述,图片信息

品牌信息表

CREATE TABLE brand_info(
    brand_id SMALLINT UNSIGNED auto_increment NOT NULL COMMENT '品牌id',
    brand_name VARCHAR(50) NOT NULL COMMENT '品牌名称',
    telephone VARCHAR(50) NOT NULL COMMENT'品牌电话',
    brand_web VARCHAR(100)COMMENT'品牌网站',
    brand_logo VARCHAR(100)COMMENT'品牌logo url',
    brand_des VARCHAR(150) COMMENT'品牌描述',
    brand_status TINYINT NOT NULL DEFAULT 0 COMMENT'品牌状态,0禁用 1 启用',
    brand_order TINYINT NOT NULL DEFAULT 0 COMMENT'排序',
    modified_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
    PRIMARY KEY pk_brandid(brand_id)
    )ENGINE =INNODB COMMENT'品牌信息表';

分类信息表

CREATE TABLE product_category(
    category_id SMALLINT UNSIGNED auto_increment NOT NULL COMMENT '分类id',
    category_name VARCHAR(50) NOT NULL COMMENT '分类名称',
    category_code VARCHAR(50) NOT NULL COMMENT '分类编码',
    parent_id SMALLINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '父分类id',
    category_level TINYINT NOT NULL DEFAULT 1 COMMENT'分类级层',
    category_status TINYINT NOT NULL DEFAULT 1 COMMENT'分类状态',
    modified_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
    PRIMARY KEY pk_categoryid(category_id)
    )ENGINE =INNODB COMMENT'分类信息表';

供应商信息表

CREATE TABLE supplier_info(
    supplier_id INT UNSIGNED auto_increment NOT NULL COMMENT '供应商id',
    supplier_code VARCHAR(50) NOT NULL COMMENT '供应商编码',
    supplier_name VARCHAR(8) NOT NULL COMMENT '供应商名称',
    supplier_type TINYINT NOT NULL COMMENT'供应商类型:1 自营 2 平台',
    link_man VARCHAR(10) NOT NULL COMMENT '供应商联系人',
    phone_number VARCHAR(50) NOT NULL COMMENT '联系电话',
    bank_name VARCHAR(50) NOT NULL COMMENT '供应商开户银行名称',
    bank_account VARCHAR(50) NOT NULL COMMENT '银行账号',
    address VARCHAR(200) NOT NULL COMMENT '供应商地址',
    supplier_status TINYINT NOT NULL DEFAULT '0' COMMENT '状态:0禁用 1启用',
    modified_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
    PRIMARY KEY pk_supplierid(supplier_id)
    )ENGINE =INNODB COMMENT'供应商信息表';

商品信息表

CREATE TABLE product_info(
    product_id INT UNSIGNED auto_increment NOT NULL COMMENT '商品id',
    product_code CHAR(16) NOT NULL COMMENT '商品编码',
    product_name VARCHAR(20) NOT NULL COMMENT '商品名称',
    br_code VARCHAR(20) NOT NULL COMMENT '国条码',
    brand_id INT UNSIGNED NOT NULL COMMENT '品牌表id',
    one_category_id SMALLINT UNSIGNED NOT NULL COMMENT '一级分类id',
    two_category_id SMALLINT UNSIGNED NOT NULL COMMENT '二级分类id',
    three_category_id SMALLINT UNSIGNED NOT NULL COMMENT '三级分类id',
    supplier_id INT UNSIGNED NOT NULL COMMENT '供应商id',
    price DECIMAL(18,2) NOT NULL COMMENT '商品售价',
    average_cost DECIMAL(18,2) NOT NULL COMMENT '商品加权平均成本',
    publish_status TINYINT NOT NULL DEFAULT '0' COMMENT '上下架状态:0下架 1上架',
    audit_status TINYINT NOT NULL DEFAULT '0' COMMENT '审核状态:0未审核 1已审核',
    weight float COMMENT '重量',
    length float COMMENT '长',
    height float COMMENT '高',
    width float COMMENT '宽',
    color_type enum('红','黄','蓝','黑'),
    production_date DATETIME NOT NULL COMMENT '生产日期',
    shelf_life INT NOT NULL COMMENT '有效期',
    descripe text NOT NULL COMMENT '描述',
    indate TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '商品录入时间',
    modified_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
    PRIMARY KEY pk_productid(product_id)
    )ENGINE =INNODB COMMENT'商品信息表';

商品图片表

CREATE TABLE product_pic_info(
    product_pic_id INT UNSIGNED auto_increment NOT NULL COMMENT '供应商id',
    product_id INT UNSIGNED NOT NULL COMMENT '商品id',
    pic_desc VARCHAR(50) COMMENT'图片描述',
    pic_url VARCHAR(50) not NULL COMMENT'图片地址',
    is_master TINYINT NOT NULL DEFAULT 0 COMMENT'是否主图:0 否 1 是',
    pic_order TINYINT NOT NULL DEFAULT 0 COMMENT'图片排序',
    pic_status TINYINT NOT NULL DEFAULT 1 COMMENT'图片是否有效:0 无效 1 有效',
    modified_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
    PRIMARY KEY pk_picid(product_pic_id)
    )ENGINE =INNODB COMMENT'商品图片信息表';

商品评论表

CREATE TABLE product_comment(
    comment_id INT UNSIGNED auto_increment NOT NULL COMMENT '供应商id',
    product_id INT UNSIGNED NOT NULL COMMENT '商品id',
    order_id VARCHAR(50) COMMENT'图片描述',
    customer_id VARCHAR(50) not NULL COMMENT'图片地址',
    title VARCHAR(50) not NULL COMMENT'评论标题',
    content VARCHAR(50) not NULL COMMENT'评论内容',
    audit_status TINYINT NOT NULL COMMENT'审核状态:0 未审核 1 审核',
    audit_time TIMESTAMP not NULL COMMENT'评论时间',
    modified_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改时间',
    PRIMARY KEY pk_commentid(comment_id)
    )ENGINE =INNODB COMMENT'商品评论表';

三、小结

本模块包含了以下表:
品牌信息表、
分类信息表、
供应商信息表、
商品信息表、
商品图片表、
商品评论表。

猜你喜欢

转载自blog.csdn.net/qq_40916110/article/details/80761479