线上鞋城 E-R 图构建 - 数据库设计与实体关系
线上鞋城 E-R 图构建 - 数据库设计与实体关系
本文将介绍如何构建线上鞋城数据库的 E-R 图,涵盖了用户、商品、订单、购物车、收货地址、支付、评价和物流等关键数据表,并详细阐述了它们之间的关系。
数据库表结构:
-
用户表 (User):
- 表头: 用户ID (主键)、用户名、密码、邮箱、手机号
- 主键: 用户ID
-
商品表 (Product):
- 表头: 商品ID (主键)、商品编号、名称、价格、库存
- 主键: 商品ID
-
订单表 (Order):
- 表头: 订单ID (主键)、订单编号、用户ID (外键)、下单时间、支付状态
- 主键: 订单ID
- 外键: 用户ID (关联用户表的用户ID)
-
购物车表 (Cart):
- 表头: 购物车ID (主键)、购物车编号、用户ID (外键)、商品ID (外键)、数量
- 主键: 购物车ID
- 外键: 用户ID (关联用户表的用户ID)、商品ID (关联商品表的商品ID)
-
收货地址表 (Address):
- 表头: 地址ID (主键)、地址编号、用户ID (外键)、收货人姓名、手机号、地址
- 主键: 地址ID
- 外键: 用户ID (关联用户表的用户ID)
-
支付表 (Payment):
- 表头: 支付ID (主键)、支付编号、订单编号 (外键)、支付方式、支付时间
- 主键: 支付ID
- 外键: 订单编号 (关联订单表的订单ID)
-
评价表 (Review):
- 表头: 评价ID (主键)、评价编号、用户ID (外键)、商品ID (外键)、评价内容、评分
- 主键: 评价ID
- 外键: 用户ID (关联用户表的用户ID)、商品ID (关联商品表的商品ID)
-
物流表 (Logistics):
- 表头: 物流ID (主键)、物流编号、订单编号 (外键)、快递公司、快递单号、发货时间、收货时间
- 主键: 物流ID
- 外键: 订单编号 (关联订单表的订单ID)
E-R 图:
+--------------+ +--------------+ +--------------+
| User | | Product | | Order |
+--------------+ +--------------+ +--------------+
| User_ID (PK)| | Product_ID | | Order_ID (PK)|
| Username | | Product_No | | Order_No |
| Password | | Name | | User_ID (FK) |
| Email | | Price | | Order_Time |
| Phone | | Stock | | Payment_Status|
+--------------+ +--------------+ +--------------+
| | |
| | |
| | |
| | |
| | |
| | |
+--------------+ +--------------+ +--------------+
| Cart | | Address | | Payment |
+--------------+ +--------------+ +--------------+
| Cart_ID (PK)| | Address_ID | | Payment_ID |
| Cart_No | | Address_No | | Payment_No |
| User_ID (FK)| | User_ID (FK)| | Order_ID (FK)|
| Product_ID | | Receiver_Name| | Payment_Method|
| Quantity | | Phone | | Payment_Time |
+--------------+ | Address | +--------------+
+--------------+
|
|
|
|
|
+--------------+
| Review |
+--------------+
| Review_ID (PK)|
| Review_No |
| User_ID (FK) |
| Product_ID (FK)|
| Review_Content|
| Rating |
+--------------+
|
|
|
|
|
+--------------+
| Logistics |
+--------------+
| Logistics_ID (PK)|
| Logistics_No |
| Order_ID (FK) |
| Courier_Company |
| Tracking_Number |
| Shipping_Time |
| Delivery_Time |
+--------------+
关系解释:
- 用户表 (User) 和商品表 (Product) 之间是一对多关系,一个用户可以拥有多个商品。
- 用户表 (User) 和购物车表 (Cart) 之间是一对多关系,一个用户可以拥有多个购物车。
- 用户表 (User) 和收货地址表 (Address) 之间是一对多关系,一个用户可以拥有多个收货地址。
- 订单表 (Order) 和用户表 (User) 之间是一对多关系,一个用户可以拥有多个订单。
- 订单表 (Order) 和支付表 (Payment) 之间是一对一关系,一个订单只能对应一个支付。
- 订单表 (Order) 和物流表 (Logistics) 之间是一对一关系,一个订单只能对应一个物流。
- 评价表 (Review) 和用户表 (User) 之间是一对多关系,一个用户可以拥有多个评价。
- 评价表 (Review) 和商品表 (Product) 之间是一对多关系,一个商品可以拥有多个评价。
原文地址: http://www.cveoy.top/t/topic/fyCA 著作权归作者所有。请勿转载和采集!