MySQL联合主键

Posted 轩宇网工作室

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL联合主键相关的知识,希望对你有一定的参考价值。

单字段主键

mysql单字段主键相信大家都熟悉了。就是以一个字段主要数据行的主键,比如下面这个表

create table `user`(
user_id int(11) auto_increment,
username varchar(24),
password char(32),
primary key(user_id)
);

user_id作为单字段主键,说明任何用户的user_id都不能相同,一个user_id即标识一个用户。

多字段联合主键

再看这个表

create table `user`(
username varchar(24),
password char(32),
email varchar(40),
primary key(username,email)
);

这里使用username,email作为联合主键,为了标识一个用户,只有在username和email共同存在,且不同时才能标识。

例子

username	password	email       
zhangsan	111111	    [email protected]
zhangsan	111111	    [email protected]    
lisi	       111111	    [email protected]

这三条记录均为合法记录,多字段联合主键的核心就是(所有字段才能唯一确定一条记录,就像上面的username,email)。

以上是关于MySQL联合主键的主要内容,如果未能解决你的问题,请参考以下文章

mysql中,索引,主键,唯一索引,联合索引的区别是?对数据库的性能有啥影响?

MySQL联合主键

MySQL联合主键

mysql表中一个表中可以有多个主键吗?

con sno联合主键怎么设置

mysql修改联合主键