联合主键就是把多列看成一个整体,该整体符合主键的特性,不为空,唯一,且不重复。

本文所有示例SQL都是以表tb_user_test来展开的,里面有身份证号、班级号、姓名几个字段,其中让身份证号和姓名列组成联合主键。

1.建表时建联合主键SQL

create table tb_user_test(

card_number VARCHAR(20) not null COMMENT '身份证号',
class_number VARCHAR(20) not null COMMENT '班级号',
user_name VARCHAR(20) not null COMMENT '姓名',

constraint  name_card  primary key(card_number,user_name)

);

或者

create table tb_user_test(

card_number VARCHAR(20) not null COMMENT '身份证号',
class_number VARCHAR(20) not null COMMENT '班级号',
user_name VARCHAR(20) not null COMMENT '姓名',
primary key(card_number,user_name)

);

2.表已存在时添加联合主键SQL

alter table tb_user_test add primary key(card_number,user_name);

或者

alter table tb_user_test add constraint name_card primary key(card_number,user_name);

3.删除主键约束SQL

alter table tb_user_test drop primary key;

mysql如何给表添加联合主键到这就介绍完了,希望对大家有帮助。

本文由《MySql教程网》原创,转载请注明出处!https://mysql360.com