约束
对表中的数据进行限定,从而保证数据的有效性、正确性和完整性
主键约束:primary key
非空约束:not null
唯一约束:unique
外键约束:foreign key
非空约束:
not null,某一列的值不为null
* 创建表的时候添加约束
create table stu(
id INT,
NAME VARCHAR(20) NOT NULL--name 非空
);
+ 创建表后,添加非空约束
ALTER TABLE STU MODIFY NAME VARCHAR(20) NOT NULL;
* 删除约束
ALTER TABLE STU MODIFY NAME VARCHAR(20);
唯一约束
unique ,某一列的值不能重复
** 注意 **:唯一约束只能由一个为NULL,但只能有一个
* 创建表的时候,条件唯一
create table stu{
phone_number varchar(20) unique;
}
* 创建完之后,添加唯一约束
alter table stu modify phone_number varchar(20) unique;
* 删除唯一约束(与上面有轻微的不同)
alter table stu drop index phone_number;
主键约束:primary key
简介
** 注意 **
* 含义:非空且唯一
* 一张表只能由一个字段为主键
* 主键就是表中记录的唯一标识
* 在创建表的时候,添加主键约束
create table stu{
id int primary key
}
* 删除主键
alter table stu drop primary key;
* 创建表后,添加主键
alter table stu modify id int primary key;
自动增长
某一个是数值类型是,使用auto_increment,可以完成自动增长
* 在创建表的时候 完成自动增长
> id int primary key auto_increment;
>删除自动增长
> alter table stu modify id int;
* 添加自动增长
* > alter table stu modify id int auto_increment
外键约束 foreign key
简介
** 让表产生关系,从而保证数据正确性
* 创建表的时候,添加外键
create table 表名{
外键列
constraint 外键名称 foreign key(外键列名称) references 主键名称(主表列名称)
}
* 删除外键
alter table 表名 drop foreign key 外键名称;
*添加外键
alter table 表名 add constraint 外键名称 foreign key (外键字段名称) references department(id)
级联操作
为了完成级联操作,需要在添加外键的时候,添加级联
添加级联
on update cascade;
举例
ALTER TABLE employee ADD CONSTRAINT emp_dep_fk FOREIGN KEY(dep_id)
REFERENCES department(id) ON UPDATE CASCADE;
级联删除
on delete cascade;