# 数据库关系图(简洁版) 下面是使用Mermaid语法生成的简洁版数据库实体关系图,重点突出表之间的关联关系: ```mermaid erDiagram %% 用户与权限系统 users ||--o{ user_details : has users }o--o{ roles : "多对多" via user_roles roles }o--o{ permissions : "多对多" via role_permissions %% 店铺系统 users ||--o{ shops : owns shops ||--o{ products : sells shop_categories ||--o{ shops : categorizes shop_categories }o--|| shop_categories : parent-child %% 商品系统 products ||--o{ product_images : has products ||--o{ product_skus : contains products ||--o{ product_attribute_values : has_attributes product_categories ||--o{ products : categorizes product_categories }o--|| product_categories : parent-child product_categories ||--o{ product_attributes : defines product_attributes ||--o{ product_attribute_values : values product_skus ||--o{ product_inventories : inventory %% 订单系统 users ||--o{ orders : places shops ||--o{ orders : receives orders ||--o{ order_items : contains orders ||--o{ order_status_history : status_history order_items ||--o{ products : product order_items ||--o{ product_skus : sku %% 支付与退款 orders ||--o{ payments : payment orders ||--o{ refunds : refund order_items ||--o{ refunds : item_refund payments ||--o{ refunds : reversed_by %% 评价系统 users ||--o{ shop_ratings : reviews shops ||--o{ shop_ratings : rated orders ||--o{ shop_ratings : based_on ``` ## 核心表关系说明 ### 1. 用户与权限模块 - **用户-详情**:一对一关系,用户信息和用户详细资料分离存储 - **用户-角色**:多对多关系,通过user_roles关联表实现 - **角色-权限**:多对多关系,通过role_permissions关联表实现 ### 2. 店铺模块 - **用户-店铺**:一对多关系,一个用户可以创建多个店铺 - **店铺分类-店铺**:一对多关系,一个分类包含多个店铺 - **店铺分类自身**:自关联,支持多级分类结构 ### 3. 商品模块 - **店铺-商品**:一对多关系,一个店铺可以销售多个商品 - **商品-图片**:一对多关系,一个商品可以有多张图片 - **商品-SKU**:一对多关系,一个商品可以有多个SKU(库存单元) - **SKU-库存**:一对一关系,每个SKU对应一个库存记录 - **商品-属性值**:一对多关系,一个商品可以有多个属性值 - **商品分类-商品**:一对多关系,一个分类包含多个商品 - **商品分类-属性**:一对多关系,一个分类定义多个属性 - **属性-属性值**:一对多关系,一个属性可以有多个值 ### 4. 订单模块 - **用户-订单**:一对多关系,一个用户可以下多个订单 - **店铺-订单**:一对多关系,一个店铺可以接收多个订单 - **订单-订单项**:一对多关系,一个订单包含多个商品项 - **订单项-商品/SKU**:多对一关系,订单项关联到具体的商品和SKU - **订单-状态历史**:一对多关系,记录订单状态变更历史 ### 5. 支付与退款模块 - **订单-支付**:一对多关系,一个订单可以有多次支付记录 - **订单-退款**:一对多关系,一个订单可以有多次退款 - **订单项-退款**:一对多关系,一个订单项可以有多次退款 - **支付-退款**:一对多关系,一笔支付可以对应多笔退款 ### 6. 评价模块 - **用户-评价**:一对多关系,用户可以对多个店铺评价 - **店铺-评价**:一对多关系,店铺可以收到多个评价 - **订单-评价**:一对一关系,一个订单对应一个评价 ## 表关系符号说明 - `||--o{` : 一对一关系(1:1) - `||--o{` : 一对多关系(1:N) - `}o--o{` : 多对多关系(N:M) - `}o--||` : 自关联关系 此简洁版关系图重点突出了系统各模块之间的核心关联,有助于理解整个数据库的设计架构。