Mysql主键外键的关联

您所在的位置:网站首页 mysql外键命名 Mysql主键外键的关联

Mysql主键外键的关联

2023-05-27 02:42| 来源: 网络整理| 查看: 265

主键(Primary key)

主键Primary key 是一列或多列的组合,作用于唯一标识表中每一行数据,简单来说就是,‘就是给每一张表中的ID添加个唯一标识,也就是主键’

    主键Primary key 特点就是:    主键必须唯一、不允许出现重复值;    主键值不能为空,也就是说,任何一行数据的主键都不能为空NULL;    主键一张表只能有一个主键,可以一列或多列组成

在Mysql数据库中,可以通过' Primary key '的关键字将一列或多列设置为主键,代码如下:

CREATE TABLE Student ( id int primary key , name varchar(50) )

Student表的id设置了主键,从而保证了每列数据的唯一性,不会在重新重复的数据,也方便了对表数据的查询、删除、修改...

外键(Foreign key )

外键Foreign key 用于建立表与表之间的关系,可以保证数据的一致性

外键(Foreign key )外键Foreign key 用于建立表与表之间的关系,可以保证数据的一致性外键‘Foreign key’ 的特点就是:外键值必须存在另一个表的主键的值,否则为空NULL;外键约束可以保证表与表之间的数据一致性,如果一个表的外键值被修改或删除了,那么关联的表的数据也会被相应地修改或删除;    一张表可以有多个外键

在Mysq数据库中,可以通过关键字‘Foreign key’将一列或多列的数据设置为外键,代码如下:

CREATE TABLE Course ( id INT primary key, name varchar(50), teacher_id int, -- 注意 foreign key (teacher_id) references Student(id) );

现在Course表和Student表就有了关联了

那么问题来了,我如何同时查询出两张表的数据呢?

不啰嗦,之间上代码:

select * from xxx A left join yy B on A.id=B.id ;

我这里就有左外连接演示

select * from Course as A left join Student as B on A.teacher_id= B.id

as 是什么意思呢? as就是重命名的意思,它的作用(主要为了方便查询),as 也可以忽略不写也是行的,因为 select * from Student  A 没有as默认也是重命名A

select * from Course A left join Student B on A.teacher_id= B.id

我这里只讲了一种左外连接,CSDN博客还有几种连接方式,比如:内连接、交叉连接...



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3