(九)关系

版权声明:转载请给出原文链接 https://blog.csdn.net/youngyouth/article/details/82965666


关系

将实体与实体的关系,反应到最终数据库表的设计上来,将关系分为三种:一对一、一对多、多对一 ;


一对一

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

比如,我们设计一张 学生表 的时候,学生表中有许多字段,诸如:姓名,性别,院系,电话,婚姻、籍贯、住址、紧急联系人 ;

其中后面几项信息是不常用信息,我们在学校一般只用到前面几个字段的信息,如果把它们设计在一张表里面的话,那么我们每次查询常用信息的时候,后面的不常用信息也会被查出来,这样 影响效率

因此,我们需要将它们分到两张表里面,但是为了信息能够对应上,我们需要使用一对一关系来约束两张表 ,使得常用表的一条记录永远只能在不常用表中匹配到一条记录,反过来也是;


一对多

一张表中的一条记录,可以匹配到另外一张表的多条记录;但是反过来,另外一张表的多条记录,只能匹配到该表的一条记录

比如有两张表:妈妈表和孩子表。它们就满足一对多的关系,一个妈妈可以有多个孩子,一个孩子只能有一个妈妈 ;

在孩子表中多添加一个字段,来表示妈妈是谁 ;


多对多

A表的一条记录,可以匹配B表的多条记录;反过来B表的一条记录,也能匹配到A表的多条记录

常用关系:老师与学生

需要第三表来维护关系,在第三张表中将学生关系与老师关系表示出来;

猜你喜欢

转载自blog.csdn.net/youngyouth/article/details/82965666