MySQL数据库干货_08—— MySQL中的主键约束(Primary Key)
主键约束(Primary Key)
-
单一主键
使用一个列作为主键列,当该列的值有重复时,则违反唯一约束。
-
联合主键
使用多个列作为主键列,当多个列的值都相同时,则违反唯一约束。
添加主键约束
-
使用DDL语句添加主键约束
ALTER TABLE 表名 ADD PRIMARY KEY(列名);
示例:
将 emp 表中的 employee_id 修改为主键。
alter table emp add primary key(employee_id);
主键自增长
MySQL 中的自动增长类型要求:
- 一个表中只能有一个列为自动增长。
- 自动增长的列的类型必须是整数类型。
- 自动增长只能添加到具备主键约束与唯一性约束的列上。
- 删除主键约束或唯一性约束,如果该列拥有自动增长能力,则需要先去掉自动增长然 后在删除约束。
alter table 表名 modify 主键 类型 auto_increment;
示例:
将 emp 表中的 employee_id 主键修改为自增。
alter table emp modify employee_id int auto_increment;
删除主键约束
-
使用DDL语句删除主键
ALTER TABLE 表名 DROP PRIMARY KEY;
注意:
删除主键时,如果主键列具备自动增长能力,需要先去掉自动增长,然后在删除主键。
示例:
删除emp表中的 employee_id 主键约束。
去掉自动增长:
alter table emp modify employee_id int;
删除主键:
alter table emp drop primary key;