MySQL查询之 联合主键

我们知道MySQL的主键是一个非空的,且唯一的键,如果我们需要两个或者多个呢

create table stu(
	id int,
	name varchar(20),
	score int,
	primary key(id, name)
);

这样我们创建了一个有两个主键的表
我们来插入数据

insert into stu values (1, 'zhangsan', 80);

然后再插入有一条数据

insert into stu values (1, 'zhangsan', 80);

会发现报错
在这里插入图片描述
我们这样插入,发现居然插入成功了,联合主键只要两个不全一样就可以

insert into stu values (2, 'zhangsan', 80);

在这里插入图片描述
另外我们可以发现,联合主键的任何一个都不可为空
在这里插入图片描述

发布了81 篇原创文章 · 获赞 48 · 访问量 8295

猜你喜欢

转载自blog.csdn.net/weixin_44415928/article/details/104673645