从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 最大); 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值