一、说明:
1、数据库的每张表只能有一个主键,不可能有多个主键。
2、所谓的一张表多个主键,我们称之为复合主键(联合主键)。
注:联合主键:就是用多个字段一起作为一张表的主键。
二、创建复合主键(联合主键)有两种方法:
法1:创建表是 创建复合主键
Create Table 表名 (字段名1 字段类型 【Not Null】,
字段名2 字段类型 【Not Null】,
Primary Key (字段名1, 字段名2),
字段名3…………
字段名N………… )
CREATE TABLE 多个主键
(
NAME VARCHAR(20),
TYPE VARCHAR(20),
PRIMARY KEY (NAME,TYPE),#要保证这两个字段非空
price INT
);
法2 :修改表示增加主键
CREATE TABLE 多个主键
(
NAME VARCHAR(20),
TYPE VARCHAR(20),
price INT
);
ALTER TABLE 多个主键 ADD PRIMARY KEY (NAME,TYPE) ;
三、删除主键 --注意,复合主键要删一起删,不能只删一个
alter table 表名 drop primary key;
例:
ALTER TABLE 多个主键 DROP PRIMARY KEY;
结果
#但是如果想只删除一个主键,那这样写是不行的
ALTER TABLE 多个主键 MODIFY COLUMN NAME VARCHAR(20) ;
show index from 多个主键;