美文网首页
MySQL 基础 5 多表设计之表关系

MySQL 基础 5 多表设计之表关系

作者: 小熊先生很不开心 | 来源:发表于2018-03-17 12:26 被阅读35次

    1.1多表设计之表关系

    1.1.1表与表之间的关系

    • 一对多的关系
      • 一对多的例子:一个部门下可以有多个员工,一个员工只能属于某一个部门。
    • 多对多的关系
      • 多对多的例子:一个学生可以选择多门课程,一门课程可以被多个学生选择。
    • 一对一的关系
      • 一对一的例子:一个公司可以有一个注册地址,一个注册地址只能对一个公司。

    1.2 多表设计之一对多关系

    • 原则
      • 在多的一方创建外键指向一的一方的主键

      • 一对多关系.png

    1.3 多表设计之多对多的关系

    • 一个学生选择多门课程,一门课程被多个学生所选择
    • 原则
      • 需要创建中间表,中间表中至少两个字段,分别作为外键指向多对多双方的主键

      • 多对多的关系.png

    1.4 多表设计之一对一关系

    • 一个公司可以对应一个注册地址,一个注册地址只能对应一个公司
    • 原则
      • 唯一外键对应

        • 假设是一对多,在多的一方创建外键指向一的一方的主键,将外键设置为unique。
      • 主键对应

        • 将两个表的主键建立对应关系即可。
      • 一对一关系.png

    1.5 多表设计之多表分析及创建

    • 完成一个学校的选课系统,在选课系统中包含班级,学生和课程这些实体。

      • 班级和学生之间是有关系存在:
        • 一个班级下包含多个学生,一个学生只能属于某一个班级(一对多的关系)。
      • 学生和课程之间是有关系存在:
        • 一个学生可以选择多门课程,一门课程也可以被多个学生所选择(多对多的关系)。
    • 多表的创建

    • 创建表.png

    1.6 练习:

    • 实现一个网上商城案例,在商城中会有用户,商品,订单,商品分类。

    相关文章

      网友评论

          本文标题:MySQL 基础 5 多表设计之表关系

          本文链接:https://www.haomeiwen.com/subject/aagrqftx.html