约束
概念
对表中数据进行约束,保证数据的完整性,有效性和正确性。
分类
- 主键约束:primary key
- 非空约束:not null
(删除和添加非空约束:alter table 表名 modify/change) - 唯一约束:unique
(1.可以为null,但只能有一个null
2.删除唯一约束:alter table 表名 drop index 列名) - 外键约束:foreign key
主键约束
- 含义:主键表示非空且唯一
- 一张表只能有一个字段为主键
- 主键就是一张表中记录的唯一标识
- 删除主键:alter table 表名 drop primary key;
- 自动增长:若某一列是数值类型的,使用auto_increment可以完成值的自动增长。(此时主键可以为空,但是会自动赋值,赋值结果为上一条数据的值+1)
外键约束
- create table 表名{
…
外键列,
constraint 外键名称 foreign key(外键列名称) references 主表名(主列名称)
}; - 删除外键
alter table 表名 drop foreign key 外键名称; - 在建表后添加外键
alter table 表名 add
constraint 外键名称 foreign key(外键列名称) references 主表名(主列名称); - 添加级联操作
alter table 表名 add
constraint 外键名称 foreign key(外键列名称) references 主表名(主列名称) on update cascade on delete cascade;
(级联更新 级联删除)