1: 什么叫键
数据库中的键(key)又称为关键字,是关系模型中的一个重要概念,它是逻辑结构,不是数据库的物理部分。
2:唯一键
唯一键,即一个或者一组列,其中没有重复的记录。可以唯一标示一条记录。
3:主键
属于唯一键,是一个比较特殊的唯一键。区别在于主键不可为空。
4:外键
一张表外键的值一般来说是另一张表主键的值。因此,外键的存在使得表与表之间可以联系起来
第一种方式:
reate table yhy (id int not null primary key ,name varchar(250) unique key, age int);
第二种方式:这里同时也给大家演示了如何将多个字段合并起来创建一个键
create table yhy (id int, name varchar(250), age int, primary key(id), unique key(name, age));
![Alt text](https://i-blog.csdnimg.cn/blog_migrate/442ea7f33af755beed6df5429fcec770.png)
先搞清楚几个概念,如果概念不搞清楚,请先不要动手
(1)给一张表创建外键的时候,必须要保证外键的值已经存在了。也就是说,一张表如果拥有外键,通常将其称为从表,而外键引用的那种表通常称为主表。
(2)那么,现在我们就搞清楚了什么是主表,什么是从表了。就像上图所示,person表叫做从表,part表叫做主表。因为person表中的part_id字段的值来自于part表中的nid字段的值。
(3)从表面上来看,有foreign key的表就叫从表,有primary key的表就叫主表。
(4)那么在创建表的时候,必须先创建主表,再创建从表
(5)那么在删除表的时候,必须先删除从表,再删除主表
(1)创建主表和从表
create table part (nid int, caption varchar(250), primary key(nid));
create table person (nid int, name varchar(250), email varchar(250), extra varchar(250), part_id int, foreign key(part_id) references part (nid));
(2)删除主表和从表
drop table person;
drop table part;
3:在搞懂了如何创建主表和从表之后,我们再来搞一搞如何创建多张主表,一张从表的模型
(超级重要,一定要搞懂)
![Alt text](https://i-blog.csdnimg.cn/blog_migrate/18a751237d93ddd955d53bfa79a56411.png)
思路:先创建主表,再创建从表
create table woman (id int, name varchar(250), primary key(id));
create table man (id int, name varchar(250), primary key(id));
create table man_to_woman (nid int, man_id int, woman_id int, foreign key(man_id) references man (id), foreign key(woman_id) references woman (id));