关系型数据库表与表之间的三种关系

1、一对一关系:

定义:有两个表,在第一个表中的某一行只与第二个表中的一行相关,同时第二个表中的某一行,也只与第一个表中的一行相关,咱们称这两个表为一对一关系。
例如:
第一张表:

ID安全

姓名spa

国籍it

贡献table

1001class

王大锤im

中国数据

万万没想到top

1002tab

吉泽明步di

日本

动做艺术片

1003

刀锋女王

未知

计划生育

第二张表:

ID

出生日期

逝世日期

1001

1988

NULL

1002

1984

NULL

1003

未知

3XXX

这里的第一张表的每一行只与第二张表的一行相对应。
提示:一对一关系是比较少见的关系类型。但在某些状况下,仍是会须要使用这种类型。
状况一:一个表包含了太多的数据列
状况二:将数据分离到不一样的表,划分不一样的安全级别。
状况三:将经常使用数据列抽取出来组成一个表
 
2、一对多关系:
定义:有多张表,第一个表中的行能够与第二个表中的一到多个行相关联,可是第二个表中的一行只能与第一个表中的一行相关联。
例如:
第一张表:

ID

姓名

国籍

 

1001

王大锤

中国

 

1002

吉泽明步

日本

 

1003

刀锋女王

未知

 

第二张表:

ID

节目ID

1001

10001

1001

10002

1003

10003

1003

10004

第三张表:

节目ID

节目名称

10001

万万没想到

10002

报告老板

10003

星际2

10004

英雄联盟

这里的第一张表的一行能够与第二张表的多行相对应;第二张表的一行与第三张表的一行相对应。
提示:一对多关系是最多见的关系类型。
 
3、多对多关系:
定义:有两个表,第一个表的一行能够与第二个表中的一到多个行相关联,同时,第二个表中的一行能够与第一个表中的一到多个行相关联。
例如:
第一张表:

ID

姓名

国籍

 

1001

王大锤

中国

 

1002

吉泽明步

日本

 

1003

刀锋女王

未知

 

第二张表:

ID

节目ID

1001

10001

1001

10002

1003

10003

1003

10004

第三张表:

节目ID

节目名称

10001

万万没想到

10002

报告老板

10003

星际2

10004

英雄联盟

在第一张与第三张表之间,一我的能够参加多个节目,一个节目也能够有多我的参加。例如王大锤参加了《万万没想到》和《报告老板》。而《万万没想到》中有王大锤和吉泽明步。这种是多对多的关系。
相关文章
相关标签/搜索