天天看点

mysql 关系表_mysql中表格关系

数据库的数据存储的现实世界的客观或抽像数据;

1.我们不可能将所有能被想到的数据都放到数据库一张表当中,这是不现实的,哪怕是一类事物,数据存放在一张表里都是麻烦的,所以我们会将需要的数据逻辑上相互关联或不关联的数据进行细致的分开存放;避免麻烦。

2.需求上相互不关联的数据,分开存放是不讨论的,我们所需要的是需求上相互关联数据分表存放,那么这个时候表格就具备关系逻辑,我们会细致对这些逻辑进行划分,以便在机器上将表之间建立相应的逻辑;

3.表格之间的逻辑来源于我们在现实世界形成的逻辑关系。

表格之间的对应关系

(1)表格之间的关系,从不同的表格出发考虑说法是不同的,你从a表到b表就是一对多,但是从b表到a表就是互补的多对一的关系,所以描述表格的关系应该是从两个表之间进行描述;

(2)基本关系双向观看互补原则;

基本关系有:一对一,一对多,多对一;

反过来看的互补原则:一对一的反向看互补原则为一对一;一对多的反过来看互补原则为多对一;多对一反过来看就是互补一对一关系;

(3)表格关系(从双方面解释【合理】)

①一对一的关系(正反都是一对一)

②从一面看是多对一,反过来看是多对一,那么叫做一对多和多对一关系(单面性的一对多,多对一)

③从一面看事是多对一,并且是多对一,反过来看事一对多,并且是多对一关系(双面性的一对多和多对一),也叫多对多;

【一对多是从一条数据出发看,多对一时从整体查看】

从表一到表二

表一的一条数据只能对应b表的一条数据,但是从整体看,多条数据对应着B表的一条数据那么叫做a到b的多对一(多对一)

从表二到表一

表二中的一条数据对应着表一多条数据,那么叫做表二到表一的多对一关系(一对多)【强调正反看正好是互补的关系】

不存在多个对应一个关系

从表一到表二

表一的一条数据只能对应b表的一条数据,但是从整体看,多条数据对应着B表的一条数据那么叫做a到b的多对一(多对一)

从表二到表一

表二中的一条数据对应着表一多条数据,那么叫做表二到表一的多对一关系(一对多)【强调正反看正好是互补的关系】

不存在多个对应一个关系

从a表到b表来讲:

a的的每条数据都值在b中对应一个值,那么整个就是从a到b的一一对应关系

从b到a表来讲:

b中的每条数据都在a中是一一对应的关系,那么就是从b到a的一一对应关系