数据库--商品 表的设计

2023-11-16

目录

商品分类表:

商品品牌表


商品分类表:

tb_item_cat  树状结构

CREATE TABLE `tb_item_cat` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '类目ID',
  `parent_id` bigint(20) DEFAULT NULL COMMENT '父类目ID=0时,代表的是一级的类目',
  `name` varchar(50) DEFAULT NULL COMMENT '类目名称',
  `type_id` bigint(11) DEFAULT NULL COMMENT '类型模板id',
  PRIMARY KEY (`id`),
  KEY `parent_id` (`parent_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1205 DEFAULT CHARSET=utf8 COMMENT='商品类目';

 

商品归类表

通过id 与 tb_item_cat  的 type_id 关联

CREATE TABLE `tb_type_template` (
  `id` bigint(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(80) DEFAULT NULL COMMENT '模板名称',
  `spec_ids` varchar(1000) DEFAULT NULL COMMENT '关联规格',
  `brand_ids` varchar(1000) DEFAULT NULL COMMENT '关联品牌',
  `custom_attribute_items` varchar(2000) DEFAULT NULL COMMENT '自定义属性',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=38 DEFAULT CHARSET=utf8;

 

商品品牌表

tb_brand  品牌id id, 品牌名称 name, 品牌logo image, 品牌首字母 letter

CREATE TABLE `tb_brand` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '品牌id',
  `name` varchar(50) NOT NULL COMMENT '品牌名称',
  `image` varchar(200) DEFAULT '' COMMENT '品牌图片地址',
  `letter` char(1) DEFAULT '' COMMENT '品牌的首字母',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=325400 DEFAULT CHARSET=utf8 COMMENT='品牌表,一个品牌下有多个商品(spu),一对多关系';

SPU和SKU

SPU=standard Product unit (标准产品单位)

是商品的聚合最小单位,一组可复用,易检索的标准化信息的集合,该集合描述一个产品的特性

例如:荣耀note10 本身是SPU 与商家,颜色,款式,套餐都无关

SKU=stock keeping unit (库存量单位)

一个SPU对应了好多SKU,比如下面的荣耀note10有   3*3*2条SKU

 荣耀note10-->SPU
颜色: 金色,红色,蓝色
网络制式: 电信,联通,移动
存储: 128G,64G
 SKU-->64G略
 荣耀note10 金色 电信 128G         荣耀note10 红色电信 128G         荣耀note10 蓝色电信 128G
荣耀note10 金色 联通128G           荣耀note10 红色联通128G          荣耀note10 蓝色联通128G
 荣耀note10 金色 移动128G          荣耀note10 红色移动128G          荣耀note10 蓝色移动128G

 

相关表

tb_goods

CREATE TABLE `tb_goods` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
  `seller_id` varchar(20) DEFAULT NULL COMMENT '商家ID',
  `goods_name` varchar(100) DEFAULT NULL COMMENT 'SPU名',
  `default_item_id` bigint(20) DEFAULT NULL COMMENT '默认SKU',
  `audit_status` varchar(2) DEFAULT NULL COMMENT '状态',
  `is_marketable` varchar(1) DEFAULT NULL COMMENT '是否上架',
  `brand_id` bigint(10) DEFAULT NULL COMMENT '品牌',
  `caption` varchar(100) DEFAULT NULL COMMENT '副标题',
  `category1_id` bigint(20) DEFAULT NULL COMMENT '一级类目',
  `category2_id` bigint(10) DEFAULT NULL COMMENT '二级类目',
  `category3_id` bigint(10) DEFAULT NULL COMMENT '三级类目',
  `small_pic` varchar(150) DEFAULT NULL COMMENT '小图',
  `price` decimal(10,2) DEFAULT NULL COMMENT '商城价',
  `type_template_id` bigint(20) DEFAULT NULL COMMENT '分类模板ID',
  `is_enable_spec` varchar(1) DEFAULT NULL COMMENT '是否启用规格',
  `is_delete` varchar(1) DEFAULT NULL COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=149187842867962 DEFAULT CHARSET=utf8;

tb_goods_desc  tb_goods与tb_goods_desc  是一对一的关系

存放文本比较大的信息,存放扩展信息

CREATE TABLE `tb_goods_desc` (
  `goods_id` bigint(20) NOT NULL COMMENT 'SPU_ID',
  `introduction` varchar(3000) DEFAULT NULL COMMENT '描述',
  `specification_items` varchar(3000) DEFAULT NULL COMMENT '规格结果集,所有规格,包含isSelected',
  `custom_attribute_items` varchar(3000) DEFAULT NULL COMMENT '自定义属性(参数结果)',
  `item_images` varchar(3000) DEFAULT NULL,
  `package_list` varchar(3000) DEFAULT NULL COMMENT '包装列表',
  `sale_service` varchar(3000) DEFAULT NULL COMMENT '售后服务',
  PRIMARY KEY (`goods_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

tb_item   tb_goods与tb_item  是一对多的关系

CREATE TABLE `tb_item` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '商品id,同时也是商品编号',
  `title` varchar(100) NOT NULL COMMENT '商品标题',
  `sell_point` varchar(500) DEFAULT NULL COMMENT '商品卖点',
  `price` decimal(20,2) NOT NULL COMMENT '商品价格,单位为:元',
  `stock_count` int(10) DEFAULT NULL,
  `num` int(10) NOT NULL COMMENT '库存数量',
  `barcode` varchar(30) DEFAULT NULL COMMENT '商品条形码',
  `image` varchar(2000) DEFAULT NULL COMMENT '商品图片',
  `categoryId` bigint(10) NOT NULL COMMENT '所属类目,叶子类目',
  `status` varchar(1) NOT NULL COMMENT '商品状态,1-正常,2-下架,3-删除',
  `create_time` datetime NOT NULL COMMENT '创建时间',
  `update_time` datetime NOT NULL COMMENT '更新时间',
  `item_sn` varchar(30) DEFAULT NULL,
  `cost_pirce` decimal(10,2) DEFAULT NULL,
  `market_price` decimal(10,2) DEFAULT NULL,
  `is_default` varchar(1) DEFAULT NULL,
  `goods_id` bigint(20) DEFAULT NULL,
  `seller_id` varchar(30) DEFAULT NULL,
  `cart_thumbnail` varchar(150) DEFAULT NULL,
  `category` varchar(200) DEFAULT NULL,
  `brand` varchar(100) DEFAULT NULL,
  `spec` varchar(200) DEFAULT NULL,
  `seller` varchar(200) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `cid` (`categoryId`),
  KEY `status` (`status`),
  KEY `updated` (`update_time`)
) ENGINE=InnoDB AUTO_INCREMENT=1369284 DEFAULT CHARSET=utf8 COMMENT='商品表';

 

 

广告表两张(tb_content_category && tb_content)

tb_content_category

CREATE TABLE `tb_content_category` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '类目ID',
  `name` varchar(50) DEFAULT NULL COMMENT '分类名称',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='内容分类';

 

tb_content

CREATE TABLE `tb_content` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `category_id` bigint(20) NOT NULL COMMENT '内容类目ID',
  `title` varchar(200) DEFAULT NULL COMMENT '内容标题',
  `url` varchar(500) DEFAULT NULL COMMENT '链接',
  `pic` varchar(300) DEFAULT NULL COMMENT '图片绝对路径',
  `status` varchar(1) DEFAULT NULL COMMENT '状态',
  `sort_order` int(11) DEFAULT NULL COMMENT '排序',
  PRIMARY KEY (`id`),
  KEY `category_id` (`category_id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;

 

 

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数据库--商品 表的设计 的相关文章

  • 跨境电商三大趋势已经涌现

    在过去的几年里 跨境电商在推动外贸增长中发挥了至关重要的作用 成为了引领行业发展的强大引擎 然而 随着2024年的到来 跨境电商行业又站在了崭新的起点 准备攀登新的发展高峰 数据显示 得益于经济的逐步复苏 未来三年跨境电商行业预计将以16
  • 【计算机开题报告】 网上茶叶销售平台设计与开发

    一 选题依据 简述国内外研究现状 生产需求状况 说明选题目的 意义 列出主要参考文献 1 研究背景 随着社会经济的迅速发展和科学技术的全面进步 以计算机与网络技术为基础的信息系统正处于蓬勃发展的时期 随着经济文化水平的提高 近年来 随着科学
  • MySQL中设置自增主键id从1开始

    可能遇到过这种问题 当你只想新增一条数据时 发现使用Insert语句后 发现id并不是从1开始的 握草 怎么回事 其实很简单 通过执行一下SQL 对应你的表就可以解决 ALTER TABLE user AUTO INCREMENT 1 具体
  • 【计算机开题报告】家具销售库存管理信息系统

    一 选题的目的 意义及相关研究动态和自己的见解 随着当今社会信息化的发展 电子自动化办公越来越为各人所重视 它能有效地收集 处理各种信息 极大地提高了办事效率 而计算机技术各种软件工作平台不断的发展 又为电子自动化办公的实现提供了良好的前景
  • Nexus5596交换机支持3层需要的子卡

    3层子卡 nexus5596如果没有这块子卡 无法支持3层特性 TEST Cisco N5596 1 show modu Mod Ports Module Type Model Status 1 48 O2 32X10GBase T 16X
  • 神州信息一表通监管合规系统

    什么是 一表通 国家金融监督管理总局为进一步建立健全数据统计监管体系 规范数据报送指标体系 明确检测数据规则 而推行建立的一套新体系监管报送方式 提升校验准确性和信息安全性 近期 国家金融监督管理总局更是进一步加大推动 一表通 的实行试点范
  • 软件开发和网络安全哪个更好找工作?

    为什么今年应届毕业生找工作这么难 有时间去看看张雪峰今年为什么这么火就明白了 这么多年人才供给和需求错配的问题 在经济下行的今年 集中爆发 供给端 大学生越来越多 需求端 低端工作大家不愿去 高端岗位又太少 很多基础行业 比如机械 土木 所
  • AntDB内存管理之内存上下文之内存上下文机制是怎么实现的

    4 内存上下文机制是怎么实现的 下文将针对内存上下文机制进行代码说明 本次以AntDB的代码为例 来解析内存上下文的实现方式 4 1 最基础的数据结构 MemoryContextData和MemoryContextMethods是内存上下文
  • AntDB内存管理之内存上下文之如何使用内存上下文

    5 如何使用内存上下文 使用内存上下文之前 我们需要先对其进行创建 AntDB启动时已经创建并初始化好了部分内存上下文 例如 TopMemoryContext 这个TopMemoryContext是所有内存上下文的父节点或者祖先节点 一般我
  • 【计算机毕业设计】航空信息管理系统

    传统信息的管理大部分依赖于管理人员的手工登记与管理 然而 随着近些年信息技术的迅猛发展 让许多比较老套的信息管理模式进行了更新迭代 飞机票信息因为其管理内容繁杂 管理数量繁多导致手工进行处理不能满足广大用户的需求 因此就应运而生出相应的航空
  • 【计算机毕业设计】学生就业管理系统

    如今社会上各行各业 都喜欢用自己行业的专属软件工作 互联网发展到这个时候 人们已经发现离不开了互联网 新技术的产生 往往能解决一些老技术的弊端问题 因为传统学生就业信息管理难度大 容错率低 管理人员处理数据费工费时 所以专门为解决这个难题开
  • 软件测试/测试开发/全日制/测试管理丨Redis内存数据库

    Redis是一种开源 内存中的数据结构存储系统 它提供了高性能 灵活性和丰富的数据结构 以下是Redis内存数据库的基本介绍 键值存储 Redis基于键值对的存储模型 其中每个键都与一个特定的值相关联 这种简单的数据模型使其易于使用和理解
  • 38条Web测试经验分享

    1 页面链接检查 每一个链接是否都有对应的页面 并且页面之间切换正确 可以使用一些工具 如LinkBotPro File AIDCS HTML Link Validater Xenu等工具 LinkBotPro不支持中文 中文字符显示为乱码
  • 通俗易懂,十分钟读懂DES,详解DES加密算法原理,DES攻击手段以及3DES原理

    文章目录 1 什么是DES 2 DES的基本概念 3 DES的加密流程 4 DES算法步骤详解 4 1 初始置换 Initial Permutation IP置换 4 2 加密轮次 4 3 F轮函数 4 3 1 拓展R到48位 4 3 2
  • 基于java的学生宿舍管理系统设计与实现

    基于java的学生宿舍管理系统设计与实现 I 引言 A 研究背景和动机 基于Java的学生宿舍管理系统设计与实现的研究背景和动机 在数字化时代的推动下 学生宿舍管理系统已经成为了管理学生宿舍的重要工具 学生宿舍管理系统能够帮助管理者更好地管
  • 深入了解 Python MongoDB 查询:find 和 find_one 方法完全解析

    在 MongoDB 中 我们使用 find 和 find one 方法来在集合中查找数据 就像在MySQL数据库中使用 SELECT 语句来在表中查找数据一样 查找单个文档 要从MongoDB的集合中选择数据 我们可以使用 find one
  • 【计算机毕业设计】趵突泉景区的智慧导游小程序_5ztvv

    当今社会已经步入了科学技术进步和经济社会快速发展的新时期 国际信息和学术交流也不断加强 计算机技术对经济社会发展和人民生活改善的影响也日益突出 人类的生存和思考方式也产生了变化 传统趵突泉景区的智慧导游采取了人工的管理方法 但这种管理方法存
  • 【ES6】解构语句中的冒号(:)

    在解构赋值语法中 冒号 的作用是为提取的字段指定一个新的变量名 让我们以示例 const billCode code version route query 来说明 billCode code version 表示从 route query
  • Oracle EBS AP发票导入 API Rejection List 第二部分

    Oracle EBS AP发票导入 API Rejection List 第二部分 The report lists the reason the invoice could not be imported and prints a bri
  • 面试官问,如何在十亿级别用户中检查用户名是否存在?

    面试官问 如何在十亿级别用户中检查用户名是否存在 前言 不知道大家有没有留意过 在使用一些app注册的时候 提示你用户名已经被占用了 需要更换一个 这是如何实现的呢 你可能想这不是很简单吗 去数据库里查一下有没有不就行了吗 那么假如用户数量

随机推荐

  • 一文搞懂MySQL索引(实现原理加优化实战,面试必问)

    前言 本篇文章从数据结构 B Tree的构建过程 MySQL索引实现 索引为什么那么快 MySQL有哪些索引 聚集索引和二级索引的区别 索引失效的原因 EXPLAIN关键字分析 索引实战 索引的优缺点 什么时候应该加索引 全方面帮助读者理解
  • Error in: PCL_DEPRECATED_HEADER(1, 15, “Please include pcl/common/io.h directly.“)

    error error expected constructor destructor or type conversion before token PCL DEPRECATED HEADER 1 15 Please include pc
  • 【Pip和Conda安装包的区别】

    Pip和Conda都是用于Python软件包管理的工具 但它们有以下区别 包管理器 Pip是Python的默认包管理器 而Conda是Anaconda发行版的包管理器 跨平台支持 Pip在各个平台上都可以使用 但是Conda特别适用于跨平台
  • VUE 出现登录界面但控制台报错FAILED TO LOAD RESOURCE: NET::ERR_CONNECTION_REFUSED

    首先 vue项目运行的端口号一般为8080 地址出现8080 1 2 说明8080端口被占用 导致vue项目在别的端口运行 但会与本地后台端口对应不上报如标题所示错误 解决方法 1 查看端口被哪个进程占用 输入命令 netstat ano
  • crm项目的搭建

    一 创建Maven项目 1 选择Maven下的 org jetbrains idea maven model Maven Archetype webapp 2 三板斧 坐标 GroupId com shsxt ArtifactId shsx
  • Fabric实战(13)Fabric链码调试(容器外)

    链码调试 本文章所有操作基于的操作系统版本是 ubuntu16 04 64位 本文章基于的Fabric网络环境是 Fabric实战 2 运行一个简单的fabric网络 容器外 1 开发环境链码调试 1 1 容器之外运行Chaincode 第
  • 开机出现start pxe over ipv4 /start pxe over ipv6无法进入系统?!

    我遇到的是戴尔电脑start pxe over ipv4 出现此类问题的原因 用户将win10系统装成win7后出现的 一般是由于在重装系统之前在BIOS中不小心设置错误所引起的 解决方法 方法一 1 首先进入bios 不同品牌按不同的热键
  • C# 通过 RabbitMQ 实现定时任务 (延时队列)

    环境准备 需要在MQ中进行安装插件 地址链接插件介绍地址 https www rabbitmq com blog 2015 04 16 scheduling messages with rabbitmq 使用场景 作为一个新的预支付订单被初
  • 部署SpringBoot项目到云服务器

    服务器选择以及项目背景 我购买的是阿里云ECS服务器 它的特点是可以给我们配置服务器较大的自由度 我选择的是Centos Linux操作系统 我这次是希望在服务器上部署一个SpringBoot后台项目 最后实现的效果是我可以在手机App上通
  • Vivado的一些tcl命令记录(待补充)

    1 Report Clock Networks report clock networks name network 1 2 分析设计中逻辑级数的分布 report design analysis logic level distribut
  • NLP(自然语言处理)是什么?

    NLP基本概念 自然语言处理 Natural Language Processing NLP 是以语言为对象 利用计算机技术来分析 理解和处理自然语言的一门学科 即把计算机作为语言研究的强大工具 在计算机的支持下对语言信息进行定量化的研究
  • simplest-jpa v1.2.0如何优雅实现多租户

    开始使用 simplest详细文档 simplest jpa 使用多租户需要 2 个步骤 在属性中配置对应租户表和列 配置 TenantFactory 注入租户数据源 TenantFactory 是用于生产租户 ID 的 或者说是用于获取当
  • idea 内存不足 low memory 彻底解决

    1 在IDE中 帮助 help gt 编辑自定义vm配置 idea64 exe vmoptions文件 修改 Xmx2048m Xms2048m 增加根据自己的系统内存 此时重启idea 仍然报内存不足 提示提高内存 通过idea log发
  • Loader Runner 课程笔记(一)录制设置和压测

    1 录制前设置 1 创建脚本 新建单协议脚本 选择Web协议 创建 LR11只支持WIN7系统 浏览器IE8 9和低版本的火狐 24 0或36 0 高版本IE可以卸载装IE8或9 不支持谷歌 LR自带火狐路径HP LoadRunner bi
  • 关于ECC-Elgamal同态加密

    关于ECC Elgamal同态加密 1 什么是ECC elliptic curve 1 有限域 首先我们要知道椭圆曲线加密是在有限域进行加密的 对于无限域上的加密我没有了解过 在椭圆曲线 加密上有限域分为 1 GF p 素数域2 GF 2
  • Python 爬虫案例

    一 用cookie池模拟登录 在网络请求交互中 为了维持用户的登录状态 引入了cookie的概念 当用户第一次登录某个网站时 网站服务器会返回维持登录状态需要用到的信息 这些信息就称为cookie 浏览器会将cookie信息保存在本地计算机
  • Intellij IDEA快速实现Docker镜像部署

    1 Docker开启远程访问 root izwz9eftauv7x69f5jvi96z docker vim lib systemd system docker service 修改ExecStart这行 ExecStart usr bin
  • python中各种文件类型的读写

    本文汇总了在python中各种类型文件的读取和写入 包含文本 图像 表格 log文件 pickle文件 npy文件 npz文件等 文本类型 txt文件 json文件 yaml文件 图像类型 使用skimage PIL opencv imag
  • Java解决线程安全问题

    文章目录 背景 1 线程安全问题 1 1 什么是线程安全 1 2 产生的原因 1 3 实例 买票超卖问题 1 4 如何确定是否存在线程安全问题 2 如何解决线程安全问题 2 1 不可变 Immutable 2 2 变量私有化 2 2 1 栈
  • 数据库--商品 表的设计

    目录 商品分类表 商品品牌表 商品分类表 tb item cat 树状结构 CREATE TABLE tb item cat id bigint 20 NOT NULL AUTO INCREMENT COMMENT 类目ID parent