精华内容
下载资源
问答
  • 2019-08-01 21:21:41
    • 假设有 A,B 两个实体,首先判断一个 A 对应几个 B,再判断一个 B 对应几个 A

    • 如果两边都是 1:1,那么 A 与 B 就是一对一的关系;

    • 如果两边只有一个 1:n,那么 A 与 B 就是一对多的关系;

    • 如果两边都是 1:n,那么 A 与 B 就是多对多的关系

    更多相关内容
  • MySQL关系&一对多&一对一&多对多

    万次阅读 2018-09-04 09:34:36
    将实体与实体的关系,反应到最终数据库表的设计上,将关系分为三种:一对一,一对多(多对一)和多对多,所有的关系都是表与表之间的关系 一对一 一对一:一张表的一条记录只能与另外一条记录进行对应,反之亦然 ...

    MySQL关系&一对多&一对一&多对多

    关系

    将实体与实体的关系,反应到最终数据库表的设计上,将关系分为三种:一对一,一对多(多对一)和多对多,所有的关系都是表与表之间的关系

    一对一
    一对一:一张表的一条记录只能与另外一条记录进行对应,反之亦然

    学生表:姓名,性别,年龄,体重,身高,婚姻状况,籍贯,家庭地址,紧急联系人

    Id(P) 姓名 性别 年龄 身高 婚姻状况 籍贯 家庭地址 紧急联系人 体重

    表设计成以上这种形式:符合要求,其中姓名,性别,年龄,身高体重属于常用数据,但是婚姻籍贯住址联系人属于不常用的数据,如果每次查询所有数据,不常用的数据就会影响效率,实际又不用
    解决方案:将常用和不常用的信息分离存储,分成两张表
    常用信息表

    Id(P) 姓名 性别 年龄 身高 体重

    不常用信息表,保证不常用信息与常用信息一定能够对应上:找一个具有唯一性(确定记录)的字段来共同连接两张表

    婚姻 籍贯 住址 联系人 Id(p)

    一个常用表中的一条记录,永远只能在一张不常用表匹配一条记录,反过来一个不常用表中的一条记录在常用表中也只能匹配一条记录,一对一的关系。

    一对多

    一对多:一张表中的一条记录可以对应另外一张表中的多条记录,但是返过来,另外一张表中的一条记录只能对应第一张表的一条记录,这种关系就是一对多或者多对一的关系
    母亲与孩子的关系:母亲与孩子两个实体
    母亲表
    Id(P) 名字 年龄 性别

    孩子表
    Id(P) 名字 年龄 性别 妈妈Id(P)
    妈妈表主键

    以上关系,一个妈妈可以在孩子表中找到多条记录,或者一条,但是一个孩子只能一个妈妈,是一种典型的一对多的关系
    但是以上设计解决了实体设计表问题,但是没有解决关系问题,孩子找不出妈妈,妈妈也找不到孩子。

    解决方案:在某一张表中增加一个字段,能够找到另一张表中的记录;应该在孩子表中增加一个字段指向妈妈表;因为孩子表的记录只能匹配到一条妈妈表的记录

    多对多

    一张表中(A)的一条记录能够对应另外一张表(B)中的多条记录,同时B表找中的一条记录也能对应A表中的多条记录,多对多的关系

    老师教学:老师和学生
    老师表
    T_ID(p) 姓名 性别
    1 A 男
    2 B 女
    学生表
    S_ID(p) 姓名 性别
    1 张三 男
    2 小芳 女
    中间关系表:老师与学生的关系
    ID T_ID(老师) S_ID(学生)
    1 A 张三
    2 B 小芳
    3 B 张三

    以上设计方案:实现了实体的设计,但是没有维护实体的关系
    一个老师教过多个学生,一个学生也被多个老师教过

    解决方案:在学生表中增加老师字段;不管在哪张表中都会出现一个问题,该字段要保存多个数据,而且是与其他表有关系的字段,不符合表的设计规范,增加一张新表,专门维护两张表之间的关系

    增加中间表之后:中间表与老师表形成了一对多的关系:而且中间表是多表,维护了能够唯一找到一表的关系;同样的学生表与中间表也是一对多的关系,一对多的关系可以匹配到关联表之间的数据

    学生找老师:找出学生id->中间表找出匹配记录(多条)->老师表匹配(一条)
    老师找学生:找出老师id->中间表找出匹配记录(多条)->学生表匹配(一条)

    展开全文
  • 数据库一对一、一对多、多对多关系

    万次阅读 多人点赞 2018-01-10 15:54:10
    数据库一对一、一对多、多对多关系  本来数据库一对一、一对多、多对多关系并不复杂,但是最近在理解的时候感觉又感觉多了写新意,所以现在在来总结一下吧 一、首先给出三种关系的实例 1、一对一关系实例 ...
    数据库一对一、一对多、多对多关系

         本来数据库一对一、一对多、多对多关系并不复杂,但是最近在理解的时候感觉又感觉多了写新意,所以现在在来总结一下吧
    一、首先给出三种关系的实例
    1、一对一关系实例
       * 一个人对应一张身份证,一张身份证对应一个人
    2、一对多关系实例
       * 一个班级拥有多个学生,一个学生只能够属于某个班级
    3、多对多实例
       * 一个学生可以选修多门课程,一个课程可以被多个学生选修

    二、一对一关系

    一对一关系是最好理解的一种关系,在数据库建表的时候可以将人表的主键放置与身份证表里面,也可以将身份证表的主键放置于人表里面

    三、一对多关系


    • 班级是1端,学生是多端,结合面向对象的思想,1端是父亲,多端是儿子,所以多端具有1端的属性,也就是说多端里面应该放置1端的主键,那么学生表里面应该放置班级表里面的主键

    四、多对多关系

    对于多对多关系,需要转换成1对多关系,那么就需要一张中间表来转换,这张中间表里面需要存放学生表里面的主键和课程表里面的主键,此时学生与中间表示1对多关系,课程与中间表是1对多关系,学生与课程是多对多关系

    四、总结

    总而言之,最重要的关系就是1对多关系,根据面向对象思想在建表的时候将1端主键置于多端即可。


    展开全文
  • 数据库建模多表一对多和多对一、一对一、多对多

    万次阅读 多人点赞 2018-06-13 18:29:30
    ----------------------------------------数据库建模多表一对多和多对一、一对一、多对多-------------------------------------------------------一对多和多对一我们再创建一张订单表,用户表和订单表之间的关系...

    ----------------------------------------数据库建模多表一对多和多对一、一对一、多对多-------------------------------------------------------

    一对多和多对一

    我们再创建一张订单表,用户表和订单表之间的关系是一对多

     从用户表分析 一对多的关系:

           箭头所指向的表是1的一端,箭头背向的表是多的一端(除一对一),多的一端有一个1的一端的主键作为外键,在两张表所对应的java实体类中1的一端中有一个多的一端的java类的集合属性。

     

     从订单表分析 一对多的关系:

           箭头所指向的表是1的一端,箭头背向的表是多的一端(除一对一),多的一端有一个1的一端的主键作为外键,在两张表所对应的java实体类中多的一端中有1的一端的java实体类的对象属性。

     

    ---------------------------------------------------------------------------------------------------------------

    一对一

    从用户表分析一对一的关系:

    箭头所指向的表是1的一端,箭头背向的表也是1的一端,箭头所指向的表的主键在背向中即作为主键右作为外键,在两张表所对应的java实体类中各自有对方的实体类属性。

    ------------------------------------------------------------------------------------------------------------------------

    多对多

    多对多的关系:

    由三张表来体现,两张是业务表,中间表是关系表,箭头由中间表分别指向两张业务表,中间表中有两张业务表的主键作为外键(联合主键),

    中间表中不能有其他业务字段。在java实体类中两张业务表分别有对方业务表的集合属性。

    展开全文
  • 题目描述:设计个机票销售网站提供机票在线销售功能。客户登录系统后,可以查看航班列表,以及剩余机票数量,可以进行机票的购买,可以查看已购机票情况,已购机票在规定的日期期限内可以退票。数据库要求:客户...
  • 数据库中“一对一”、“一对多”、“多对多”的判断方法 多对多:一个老师可以教多个学生,一个学生可以有多个老师教。 一对多:一个父亲可以有多个亲生孩子,一个孩子只能有一个生父。 一对一:一个人只能有一张...
  • 转自:...一对多:从球队角度来说一个球队拥有多个球员 即为一对多多对一:从球员角度来说多个球员属于一个球队 即为多对一数据表间一对多关系如下图:注:一对多...
  • 一对一直播区别于以往我们所看到直播平台,它更加侧重于陌生人社交,同时也属于内容付费直播范畴,除了在社交领域应用之外,它也可以作为一种工具,应用于在线教育、在线医疗等应用场景。 一对一直播开发核心...
  • 一对多关联映射和多对一关联映射实现的基本原理都是一样的,既是在多的一端加入一个外键指向一的一端外键,而主要的区别就是维护端不同。 它们的区别在于维护的关系不同: 一对多关联映射是指在加载一的一端...
  • 数据库中的数据表之间的关系包括一对一,一对多,多对多,它们...这三种关系中比较让你不好理解的可能就是一对一和一对多区别了,暂时按下不表 首先还是举一个比较常见的一对一的关系:银行账户(Account)联系人
  • Rxjava mapflatMap区别

    万次阅读 2018-11-21 14:14:09
    mapflatMap都是依赖传入的Function对数据进行...map只能进行一对一的变换,而flatMap则可以进行一对一,一对多,多对多的变换,具体的变换规则根据我们设置的变换函数mapper来定 demo List<String&g...
  • 单播、播(组播)广播的差别

    万次阅读 2018-08-29 14:10:15
    单播、播(组播)广播的差别 单播、广播单播”(Unicast)、“播”(Multicast)“广播”(Broadcast)这三个术语都是用来描写叙述网络节点之间通讯方式的术语。   那么这些术语到底是什么意思?...
  • 单播、播(组播)广播的区别

    万次阅读 2018-07-12 15:32:59
    如果个人另外个人说话,那么用网络技术的术语来描述就是“单播”,此时信息的接收传递只在两个节点之间进行。 单播在网络中得到了广泛的应用,网络上绝大部分的数据都是以单播的形式传输的,只是一般网络...
  • 、中间表-多对多关系的转化实际中,经常存在多对多关系。以订单商品为例,个订单对应多个商品,个商品也对应多个订单。此时在将E-R图转化为关系模型时,需要引入中间表(也叫做连接表)。中间表包含两个实体...
  • 单线程与线程的区别

    万次阅读 多人点赞 2018-07-02 13:33:12
    个程序开始运行时,它就是个进程,进程包括运行中的程序程序所使用到的内存系统资源。而个进程又是由个线程所组成的。什么是线程?线程是程序中的个执行流,每个线程都有自己的专有寄存器(栈指针、...
  • TCPUDP的区别

    万次阅读 多人点赞 2021-03-06 15:26:48
    2.4 TCP只有一对一的传输方式,而UDP不仅可以一对一,还可以一对多,多对多 2.5 UDP的头部开销小,TCP的头部开销大 2.6 TCP会产生粘包问题,UDP会产生丢包问题 2.6.1 TCP粘包 2.6.2 UDP丢包问题 三、总结 一、...
  • mybaties中resultMapresultType的区别

    万次阅读 多人点赞 2019-06-17 22:01:06
    (数据库,实体,查询字段,这些全部都得一一对应)高级映射 :(resultMap) 如果查询出来的列名pojo的属性名不一致,通过定义个resultMap列名pojo属性名之间作个映射关系。(高级映射,字段名称可以不...
  • TCP与UDP的区别(超详细)

    万次阅读 2020-02-28 17:14:45
    TCP只支持点对点通信,UDP支持一对一,一对多,多对多 TCP报文首部20个字节,UDP首部8个字节 TCP有拥塞控制机制,UDP没有 TCP协议下双方发送接受缓冲区都有,UDP并无实际意义上的发送缓冲区,但是存在接受缓冲区 ...
  • 当两个属性表中的相关字段具有一对多或多对多关系时,就只能应用关联操作。 2、空间连接 空间连接类似于属性连接,但是不使用公共字段来决定匹配数据表中的哪些行,而是使用空间要素的“位置”来代替。
  • 程序,进程,线程的区别和联系

    万次阅读 多人点赞 2018-08-26 22:27:18
    进程程序区别和联系表现在以下方面: 1)程序只是组指令的有序集合,它本身没有任何运行的含义,它只是个静态的实体。而进程则不同,它是程序在某个数据集上的执行。进程是个动态的实体,它有自己的生命周期...
  • Java - 阐述ServletCGI的区别

    万次阅读 2019-03-16 17:29:54
    Servlet与CGI的区别在于Servlet处于服务器进程中,它通过线程方式运行其service()方法,个实例可以服务于个请求,并且其实例一般不会销毁,而CGI每个请求都产生新的进程,服务完成后就销毁,所以效率上低于...
  • 浅谈线性结构非线性结构的区别

    千次阅读 多人点赞 2019-09-05 15:29:19
    在讲线性结构非线性结构之前,我们必须了解数据结构是什么,它包含什么内容,现在我用一个图大概的表示一下。 数据结构就是一种计算机存储的方式,... 线性结构最典型的数据关系就是一对一,它是一种有序数...
  • 复用

    千次阅读 多人点赞 2017-05-14 15:58:04
    复用复用,其实这两个词的意思还是有些差别的,就如TDM翻译成“时分复用”,而TDMA,仅个字母a,译成“时分址”,差别就在这个字母a上:a,access:代表种接入方式。Multiplexing:复用,更的...
  • MongoDBmysql的区别

    万次阅读 多人点赞 2021-03-12 19:37:57
    MongoDB 是个介于关系数据库非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 MongoDB 将数据存储为个文档,数据结构由键值(key=>value)组成。 MongoDB 文档类似于 JSON 对象...
  • 协程线程的区别

    万次阅读 2018-06-30 16:10:17
    先简要说下结论:协同程序(coroutine)与线程情况下的线程比较类似:有自己的堆栈,自己的局部变量,有自己的指令指针(IP,instruction pointer),但与其它协同程序共享全局变量等很信息。协程(协同程序): ...
  • Docker虚拟机的区别

    万次阅读 2017-12-01 11:51:56
    比较直观地说,vm通过Hypervisor硬件资源进行虚拟化,而docker直接使用硬件资源,利用率上来看docker明显更具有优势。 上组从知乎上看到的图:   可以看到,容器隔离的粒度更加小一点,而且
  • TPS、QPS系统吞吐量的区别和理解

    万次阅读 多人点赞 2018-10-21 21:36:21
    QPS:Queries Per Second意思是“每秒查询率”,是台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。 TPS:是TransactionsPerSecond的缩写,也就是事务数/秒。它...
  • gitee及github的区别

    万次阅读 多人点赞 2021-01-18 21:21:48
    最初了解Git,同时听到了Github、Gitee(码云),于是想要弄明白三者之间的区别与联系,经过一番搜寻,大致明白Git是种东西,在本地的,可以下载安装。Git官网:https://git-scm.com/ 通过git可以将代码上传到...
  • 支持次提前还贷的房屋贷款还款计算器

    千次下载 热门讨论 2010-01-27 22:19:26
    本软件可以计算房屋贷款的还款信息,等额本金方式等额本息方式还款都可计算,还可以计算次提前还款后的还款信息,也支持利率调整。特别提示:最近利息调整了,调整后第个月的计算结果银行的有点差别,但从第...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,766,480
精华内容 1,106,592
关键字:

一对多和多对一区别