MySQL中对表的约束-----主键
用主键primary key来约束的字段里的数据不能重复,不能为空,一张表中最多只能有一个主键
- 主键可以在创建表的时候指定,也可以在创建表完成后追加。
例:创建表的时候直接在字段上指定主键
create table tt1(
id int unsigned primary key comment '学号不能为空',
name varchar(20) not null);
- 如果有多个字段需要作为主键,可以使用复合主键
create table tt2(
id int unsigned,
course char(10) comment '课程代码',
score tinyint unsigned default 60 comment '成绩',
primary key(id, course)
);
- 表创建好后再次追加主键
语法:
alter table 表名 add primary key(字段列表)
例:
create table tt3(
id int,
name varchar(20)
);
追加主键
alter table tt3 add primary key(id);
- 主键对表的约束就是主键对应的字段不能重复,一旦重复,就会操作失败
例:向表3中插入两条数据,这两条数据的id相同
insert into tt3 values(1,'calm');
insert into tt3 values(1,'hellon');
因为id是主键,不能重复,所以第二条数据插入失败。
- 删除主键
语法:
alter table 表名 drop primary key;
例:删除tt3的主键
alter table tt3 drop primary key;