一、引言
学习完函数之后,进入到 约束 的学习。约束就是束缚、限制,它是用来限制表结构当中所存储的数据的。
二、概述
1、概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据。
2、目的:保证数据库中数据的正确、有效性和完整性。
3、分类:
注意:
(1)非空约束:NOT NULL ,限制该字段必须有值
(2)唯一约束:确保某字段的所有数据都是唯一的、不重复。例如,身份证号、用户注册时的手机号或者注册时的用户名等等。也就是有业务的要求下:UNIQUE(unique)
(3)主键约束:主键就是表中一行数据的唯一标识,对主键的要求:非空且唯一 。对应关键字:PRIMARY KEY (primary key) 。在很多时候,我们在设计一张表的时候一定要有主键
(4)默认约束:指我们在保存数据的时候,如果没有指定该字段的值,那该字段将会采用默认值。关键字:DEFAULT 。比如我们有一张表,表当中有一个状态字段,这个状态字段默认就是1,那如果没有指定,默认状态值就是1
(5)检查约束:保证字段值能够满足某一个条件或者多个条件。关键字:CHECK 。MySQL 自8.0.16版本之后支持检查约束
(6)外键约束:它是用来让两张表的数据之间建立连接,保证数据的一致性和完整性。一旦讲到外键,那至少有两张表。关键字:FOREIGN KEY (foreign key)
注意:约束是作用于表中字段上的,可以在创建表/修改表的时候添加约束。
这是这篇博客的主要内容,讲到了约束的概念、作用以及目的。其次讲到了约束的分类以及约束所涉及到的关键字,后面将会展开如何去使用这些关键字,如何在建表的时候为指定字段添加约束?