啥网站都能看的浏览器,超市网站开发建设建议,河北建筑培训网首页,网站图片多 如何优化目录
一、表的设计
二、一对一关系
三、一对多关系
四、多对多关系 一、表的设计 数据库设计就是根据需要创建出符合需求的表。 首先根据需求找到体系中的关键实体对象#xff0c;通常每个实体对象都会有一个表#xff0c;表中包含了这个实体的相关属性。 再理清楚实体对…目录
一、表的设计
二、一对一关系
三、一对多关系
四、多对多关系 一、表的设计 数据库设计就是根据需要创建出符合需求的表。 首先根据需求找到体系中的关键实体对象通常每个实体对象都会有一个表表中包含了这个实体的相关属性。 再理清楚实体对象间的关系不同的关系有不同的设计表的方式。
表的三种关系有
关系说明一对一的关系表1中一行数据和表2的一行数据一一对应。一对多的关系表1中一行数据可以对应表2的多行数据。多对多的关系表1中一行数据可以对应表2的多行数据表二的一行数据同样可以对应表1中的多行数据。
二、一对一关系
图示 示例
语句create table register(id int primary key,date datetime);说明创建表格register以id作为主键。语句 create table student( stu_id int primary key,name varchar(32),reg_id int unique, foreign key(reg_id) references register(id) ); 说明 创建表格student以stu_id作为主键reg_id是唯一键 以reg_id作为外键与表格register中的id一一对应。
总结:根据上述示例可以发现一对一关系下外键和外键关联的其他键通常是主键或唯一键。
三、一对多关系
图示 示例
语句 create table class(num int primary key,name varchar(32)); 说明创建表格class以num作为主键。语句 create table student( stu_id int primary key,name varchar(32),class_num int, foreign key(class_num) references class(num) ); 说明创建表格student以stu_id作为主键以class_num作为外键与表格class中的num对应。
总结:根据上述示例可以发现一对多关系下外键并不是唯一键而外键关联的其他键则是主键或唯一键。这代表外键的值可以重复但是其取值范围只能被限定在外键关联键已有的值中。
四、多对多关系
图示 示例
语句 create table course(id int primary key,name varchar(32)); 说明创建表格course以id作为主键。语句 create table student(id int primary key,name varchar(32)); 说明创建表格student以id作为主键。语句 create table cou_stu( cou_id int,stu_id int foreign key(cou_id) references course(id) foreign key(stu_id) references student(id) ); 说明 创建表格cou_stu 以cou_id作为外键与表格course中的id对应 以stu_id作为外键与表格student中的id对应。
总结: 根据上述示例可以发现多对多关系下需要创建一张关联表来记录数据。 关联表中的作为外键的字段并非唯一键而外键关联的其他键则是主键或唯一键。 这与一对多关系的设计类似外键的值可以重复但是其取值范围只能被限定在外键关联键已有的值中。 不同的是多对多关系的表设计中外键关联语句存在多条。