当前位置: 首页 > news >正文

饿了么数据库表设计

有商家表、商品表、商品规格表、购物车表,不难分析出表是不够全面的。

(1)首先分析需要补充的表


1.对于购物车而言肯定有对应的用户,因此要添加一个用户表。
2.商品规格是冷,热,半分糖、全糖,对于冷热和半分糖是可以分类的,因此对于商品规格来说缺少规格分类表,比如:规格分类表的分类有温度、糖分。
3.对于商品来说,多种商品组合在一起成为一个套餐,商家是销售套餐的,因此需要添加套餐表,一个套餐内包含多种商品的不同数量。如:田园汉堡套餐包含一个汉堡,两杯可乐。
得出结论:还要添加用户表、规格分类表、套餐表

添加之后的表有:商家表、商品表、商品规格表、购物车表、用户表、规格分类表、套餐表共7张表

(2)分析表之间的关系


1.用户表和购物车表:一个用户只能有一个购物车,而一个购物车也只能属于一个用户,因此用户表与购物车表的关系是一对一。
2.购物车表和套餐表:一个购物车可以有多个套餐,一个套餐也可以属于多个购物车,因此购物车表与套餐表的关系是多对多。
3.商家表与套餐表: 一个商家可以销售多种套餐,而一种套餐也可以被多家商家销售,因此商家表与套餐表的关系是多对多。
4.套餐表与商品表: 一个套餐可以包含多种商品,而一种商品也可以属于多个套餐,因此套餐表与商品表的关系是多对多。
5.商品表与商品规格表:一个商品可以有多种规格,而一个规格也可以属于多种商品,因此商品表与商品规格表的关系是多对多。
6.商品规格表与规格分类表:一个商品规格只能属于一个规格分类,而一个规格分类包含多种商品规格,因此商品规格表与规格分类表是多对一。

表关系图

(3)对多对多关系的表添加中间表,并添加相应外键。


添加中间表
1.购物车表与套餐表中间表:在此表添加购物车表与套餐表外键    
2.商家表与套餐表中间表:在此表添加商家表与套餐表外键
3.套餐表与商品表中间表:在此表添加套餐表与商品表外键
4.商品表与商品规格表中间表:在此表添加商品表与商品规格表外键

(4)对多对一关系的两张表,只需在多的一方添加外键即可。

(5)对一对一关系的两种表,只需在任意一方添加唯一外键即可。

(6)将表与表之间的关系建立起来之后,需要扩展字段自行添加。
 

(7)最终建立的数据库文件如下:

http://www.lryc.cn/news/474251.html

相关文章:

  • Flink处理乱序的数据的最佳实践
  • Android OpenGL ES详解——模板Stencil
  • vscode在cmake config中不知道怎么选一个工具包?select a kit
  • 无人机之无线电监测设备技术篇
  • 【系统架构设计师】预测试卷一:案例分析
  • 一篇文章教会你I2C通信(软件I2C和硬件I2C)以读取MPU6050为例,附STM32代码示例
  • Python实现SPFA算法
  • MYSQL安装(ubuntu系统)
  • Cpp二叉搜索树的讲解与实现(21)
  • 微服务设计模式 — 补偿事务模式(Compensating Transaction Pattern)
  • 20 实战:形状编码、运动补偿和纹理编码的实现(基于python)
  • 区块链-C++挖矿软件XMRIG源码分析
  • C语言指针的介绍
  • 八大排序算法——堆排序
  • U盘文件不翼而飞?这些数据恢复工具帮你找回!
  • 在Java中 try catch 会影响性能吗?
  • 吞吐量最高飙升20倍!破解强化学习训练部署难题
  • redis的数据过期策略
  • 三周精通FastAPI:27 使用使用SQLModel操作SQL (关系型) 数据库
  • Kubernetes金丝雀发布
  • 树形DP讲解
  • 容器:如何调试容器
  • 用图说明 CPU、MCU、MPU、SoC 的区别
  • 牛客周赛 Round 65
  • 超级经典的79个软件测试面试题(内含答案)
  • 【Mac】安装 F5-TTS
  • Leaflet查询矢量瓦片偏移的问题
  • 存储引擎技术进化
  • CentOS 9 Stream 上安装 Maven
  • 强势改进!TCN-Transformer时间序列预测