多对多(many-to-many)
要表示多对多关系,必须创建第三个表,该表通常称为联接表
,它将多对多关系划分为两个一对多关系。将这两个表的主键都插入到第三个表中。
举例1:学生-课程
学生信息表
:一行代表一个学生的信息(学号、姓名、手机号码、班级、系别...)课程信息表
:一行代表一个课程的信息(课程编号、授课老师、简介...)选课信息表
:一个学生可以选多门课,一门课可以被多个学生选择
学号 课程编号
1 1001
2 1001
1 1002
举例2:产品-订单
“订单”表和“产品”表有一种多对多的关系,这种关系是通过与“订单明细”表建立两个一对多关系来定义的。一个订单可以有多个产品,每个产品可以出现在多个订单中。
产品表
:“产品”表中的每条记录表示一个产品。订单表
:“订单”表中的每条记录表示一个订单。订单明细表
:每个产品可以与“订单”表中的多条记录对应,即出现在多个订单中。一个订单可以与“产品”表中的多条记录对应,即包含多个产品。
举例3:用户-角色
多对多关系建表原则:需要创建第三张表,中间表中至少两个字段,这两个字段分别作为外键指向各自一方的主键。
多对多(many-to-many)相关推荐
- MyBatis 一对多、多对一的处理~
目录 1.多对一处理 1.1.打个比方 1.2.实例环境搭建 1.3.目标:查询所有的学生信息以及对应的老师信息 方式一:查询嵌套 方式二:结果嵌套 2.一对多处理 2.1.目标:获取指定老师下的所有 ...
- Django框架(十)--常用字段、参数、元信息、多对多关联关系
一.ORM字段 # AutoField() int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列# IntegerField() ...
- Django --ORM常用的字段和参数 多对多创建形式
1 ORM字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型 ...
- 如何使用JPA注解标注多对多的关系
假设应用场景如下:Teacher与Student是多对多的关系,其中,Teacher类对应teacher表如下: CREATE TABLE `teacher` ( `id` bigint(20) ...
- NHibernate从入门到精通系列(7)——多对一关联映射
内容摘要 多对一关联映射概括 多对一关联映射插入和查询 多对一关联映配置介绍 一.多对一关联映射概括 关联关系是实体类与实体类之间的结构关系,分别为"多对一"."一对一& ...
- mysql 多表关联建模_(四)多对多模式 - 数据库模型设计专栏 - CSDN博客
连载之5 原创:胖子刘(转载请注明出处及作者,谢谢.)(四)多对多模式 多对多模式,也是比较常见的一种数据库设计模式,它所描述的两个对象不分主次.地位对等.互为一对多的关系.对于A表来说,一条记录对应 ...
- ORM操作models一对多、多对多关系
ORM操作 单表.一对多表操作 1 from django.db import models 2 3 4 class UserGroup(models.Model): 5 title = models ...
- 关于一对多,多对多的多表查询的控制
一.一对多 以班级Classes和学生Student为例: 回忆sql语句: //内链接,两种方式效果一样,查询的是两边都有的数据 SELECT c.*,s.* FROM classes c,stud ...
- Hibernate annotation多对多配置
角色(用户组),用户多对多. 角色实体配置: private Set<TAuthUser> users;@ManyToMany@JoinTable(name="t_auth_us ...
- 初学者易上手的SSH-hibernate04 一对一 一对多 多对多
这章我们就来学习下hibernate的关系关联,即一对一(one-to-one),一对多(one-to-many),多对多(many-to-many).这章也将是hibernate的最后一章了,用于初 ...
最新文章
- Win7/Win2008下IIS配置Asp站点启用父路径的设置方法
- LeCun论战Markus:AI是否需要类似人类的认知能力?
- Oracle the network adapter could not establish the connection
- SAP AUT10 查看修改记录
- 数字时代企业内部如何高效协作?这款工具值得一试
- 深度学习CTR模型最全演化图谱 [王喆观点]
- 美国研发出第一台计算机的时间,研发世界第一台电脑的核心人物,被美国隐藏35年,只因他是个华人...
- FJWC 2019 游记
- 公共wifi做家用_如何在公共网络上获得免费的wifi
- 《Android源码设计模式》--装饰模式
- 计算机科学美国大学专业,美国大学Computer Science 计算机科学专业排名(转)...
- 怎么在delphi显示html,如何在Delphi中将简单的RichText转换为HTML标签?
- Nearest Common Ancestors(LCA板子)
- mysql对sql的支持并不是太好_MySQL数据库优化总结
- 复制构造函数与析构函数
- SkeyePlayer RTSP/RTMP低延迟播放器源码解析系列之效率优化方案
- 华为荣耀黑科技,打造震撼AI智能机
- 报错:IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or
- ##配置 SEP+RRPP 混合环组网
- 【前端】JavaScript基础(二)