约束
约束是作用于字段上的规则
,它可以用来限制数据的输入
约束保证了数据库的正确性、有效性、完整性。
约束 | 关键字 |
---|---|
非空约束:保证了数据不为 null 值 | not null |
唯一约束:保证了字段值在表中是唯一的 | unique |
主键约束: 主键是一条记录的唯一标识,要求非空且唯一 | primary key |
检查约束:要求字段值符合某一条件 | check |
默认约束:当加入一条记录时,若该字段未指定值则为默认 | default |
外键约束:可以建立两个表的连接,保证数据的一致性和完整性 | foreign key |
自增 | auto_increment |
注:MySQL不支持 检查约束
- 添加约束
创建表时添加:
create table 表名(
字段名 数据类型 列级约束,
...,
constraint 外键名1 foreign key(外键字段1) references 主表名(主表字段1),
constraint 外键名2 foreign key(外键字段2) references 主表名(主表字段2)
);
添加列级约束
alter table 表名 modify 字段名 数据类型 约束;
添加表级约束(如外键)
alter table 表名 add constraint 外键名称 foreign key(外键字段名) references 主表名(主表字段);
- 删除约束
删除列级约束
alter table 表名 modify 字段名 数据类型;
删除表级约束(如外键)
alter table 表名 drop foreign key 外键名称;