sql-创建复合主键

 

一、说明:

1、数据库的每张表只能有一个主键,不可能有多个主键。

2、所谓的一张表多个主键,我们称之为复合主键(联合主键)。

     注:联合主键:就是用多个字段一起作为一张表的主键。

sql-创建复合主键_第1张图片

 

二、创建复合主键(联合主键)有两种方法:

法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;

 结果

sql-创建复合主键_第2张图片

#但是如果想只删除一个主键,那这样写是不行的
ALTER TABLE 多个主键 MODIFY COLUMN NAME  VARCHAR(20) ;
show index from 多个主键;

 

你可能感兴趣的:(mysql,学习,sql,mysql)