• MySQL 数据库设计 笔记与总结(1)需求分析


    数据库设计的步骤

    ① 需求分析

    ② 逻辑设计

      使用 ER 图对数据库进行逻辑建模

    ③ 物理设计

    ④ 维护优化

      a. 新的需求进行建表

      b. 索引优化

      c. 大表拆分

    【需求分析】

    ① 了解系统中所要存储的数据(对象 / 实体)

      a. 实体与实体之间的关系(1 对 1,1 对 多,多 对 多)

      b. 实体所包含的属性有哪些

      c. 哪些属性或属性的组合可以唯一标识一个实体

    ② 了解数据的存储特点

    ③ 了解数据的生命周期

    【例】

    一个小型电商网站,核心模块包括:用户、商品、订单、购物车、供应商

    ① 用户模块

    包括属性:用户名、密码、电话、邮箱、身份证号、地址、姓名、昵称

    可选唯一标识属性:用户名、身份证、电话

    存储特点:随系统上线时间逐渐增加,需要永久存储

    ② 商品模块

    包括属性:商品编码、商品名称、商品描述、商品品类、供应商名称、重量、有效期、价格

    可选唯一标识属性:(商品名称、供应商名称的组合)、(商品编码)

    存储特点:对于下线商品可以归档存储

    ③ 订单模块

    包括属性:订单号、用户姓名、用户电话、收货地址、商品编号、商品名称、数量、价格、订单状态、支付状态、订单类型

    可选唯一标识属性:(订单号)、(用户姓名、商品、下单日期的组合属性)

    存储特点:永久存储(分表、分库存储)

    ④ 购物车 用户保存用户购物时选对的商品

    包括属性:用户名、商品编号、商品名称、商品价格、商品描述、商品分类、商品数量

    可唯一标识属性:(用户名、商品编号、加入时间)、(购物车编号)

    存储特点:不永久存储(设置归档、清理规则)

    ⑤ 供应商 用于保存所销售商品的供应商信息

    包括属性:供应商编号、供应商名称、联系人、电话、营业执照号、地址、法人

    可选唯一标识:(供应商编号)、(营业执照号)

    存储特点:永久存储

    【模块间的关系】

    用户  ←  1对多→   订单

      ↑                        ↑

    1对多                多对多

      ↓                       ↓

    购物车 ←多对多→ 商品  ← 多对多 → 供应商

  • 相关阅读:
    直接拿来用 九个超实用的PHP代码片段(二)
    微信开发值得推荐的开源项目
    PHP文件下载原理
    简化PHP开发的10个工具
    CI Weekly #1 | 这份周刊,带你了解 CI/CD 、DevOps、自动化测试
    fir.im Weekly
    fir.im Weekly
    fir.im Weekly
    用 flow.ci 让 Hexo 持续部署
    fir.im Weekly
  • 原文地址:https://www.cnblogs.com/dee0912/p/4430306.html
Copyright © 2020-2023  润新知