从0开始学MySQL之表的约束(持续更新...)

目录

一.常见的约束

二.非空约束

1.添加非空约束

 2.删除非空约束

三.唯一性约束

1.添加唯一性约束

1.1.直接add

2.删除

四.主键约束

1.添加约束

2.删除主键 

五.默认值约束

 六.自增长约束

七.检查约束



一.常见的约束

非空约束

唯一约束

主键约束

外键约束

二.非空约束

not null约束定义了表中的数据行的特定列是否可以为null

1.添加非空约束

创建表时添加

create table 表名(字段名 字段类型......)not null;

修改表中该字段数据类型时添加

alter table 表名 modify 字段名 新数据类型 not null;

 2.删除非空约束

修改表中该字段数据类型时删除

 alter table 表名 change column  字段名 新数据类型;

 alter table 表名 modify 字段名 新数据类型;

三.唯一性约束

unique约束确保表中一列或多列的组合值具有唯一性,防止输入重复值,主要用于保证非主键列的实体完整性。

1.添加唯一性约束

1.1.直接add

1.1.1表级约束

 alter table 表名 add unique(字段名);

1.1.2联合唯一性约束

 alter table 表名 add unique(字段名1,字段名2); 

字段名1与字段名2的组合具有唯一性

比如代码中:同一个班级里不能有同一个id; 

2.删除

alter table 表名 drop index 字段名;

四.主键约束

一个表中,只能有一个主键。一个主键可以由一个或多个列构成。

主键约束相当于唯一性与非空约束的组合

 对一个字段既添加唯一性约束,又添加非空约束

1.添加约束

创建时添加主键约束 

create table 表名(字段名 字段类型 primary key,......)

 alter table时添加

alter table 表名 add primary key(字段名);

2.删除主键 

alter table 表名 drop primary key;

五.默认值约束

创建时添加

create table 表名(字段名 字段类型 default 默认值);

修改时

alter table 表名 modify 字段名 字段类型 default 默认值;

删除 

 六.自增长约束

自增长列必须是主键列

如果自增列指定0和null,会在当前最大值的基础上自增

如果自增列手动指定了具体值,直接赋值为具体值

 创建表时 

create table 表名(字段名 字段类型 primary key auto_increment);

 修改表的某个字段的数据类型时

alter table 表名 modify 字段名 字段类型 auto_increment;

七.检查约束

检查某字段是否符合要求  

alter table 表名 add check(字段名 between  最小 and 最大); 

 

猜你喜欢

转载自blog.csdn.net/GANTENJ/article/details/127370658
今日推荐