Mysql主键外键的关联

主键(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博客还有几种连接方式,比如:内连接、交叉连接...

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

半杯可可

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值