MySql:约束

概述

1.概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据.

2.目的:保证数据库中数据的正确,有效性,和完整性!

3.分类:

约束的演示

案例:

SQL语句为:

CREATE TABLE user(
   id int primary key auto_increment comment '主键',
	 name varchar(10) not null unique comment '姓名',
	 age int check(age>0 && age<=120) comment '年龄',
	 status char(1) default '1' comment '状态',
	 gender char(1) comment '性别'
) comment '用户表';

 外键约束

注意:目前上面两个表,在数据库层面,并未建立外键关联,所有是无法保证数据的一致性和完整性的!

添加外键约束

语法:

--创建表的时候
create table 表名(
   字段名 数据类型,
	 .....
	 [constraint] [外键名称] foreign key (外键字段名) references 主表(主表列名)
);


--表创建完之后添加外键约束
alter table 表名 add constraint 外键名称 foreign key (外键字段名) REFERENCES 主表(主表列名);

上面两个表添加外键约束:alter table emp add constraint fk_emp_dept_id foreign key (dept_id) REFERENCES dept(id);

删除外键:alter table emp drop foreign key fk_emp_dept_id;

外键删除更新行为

语法:alter table 表名 add constraint 外键名称 foreign key (外键字段名) REFERENCES 主表(主表列名) on update cascade on delete cascade;

 

阅读剩余
THE END