目录
1 概述
1.1 概念
- 约束是作用于表中字段上的规则,用于限制存储在表中的数据
1.2 目的
-
保证数据库中数据的正确、有效性和完整性
1.3 分类

注意:约束是作用于表中字段上的,可以在创建表/修改表的时候添加约束
2 约束演示

- 建表
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 '用户表';
- 插入数据
insert into user(name, age, status, gender) values ('Tom1',19,'1','男'), ('Tom2',25,'0','男');
3 外键约束
3.1 概念
- 外键用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性

注意:目前上述的两张表,在数据库层面,并未建立外键关联,所以是无法保证数据的一致性和完整性的
3.2 语法
- 添加外键
CREATE TABLE 表名(
字段名 数据类型,
...
[CONSTRAINT] [外键名称] FOREIGN KEY (外键字段名) REFERENCES 主表 (主表列名)
);
ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段名) REFERENCES 主表 (主表列名);
- 删除外键
ALTER TABLE 表名 DROP FOREIGN KEY 外键名称;
3.3 删除/更新行为

- CASCADE
ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段) REFERENCES 主表名 (主表字段名) ON UPDATE CASCADE ON DELETE CASCADE;
- SET NULL
ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段) REFERENCES 主表名 (主表字段名) ON UPDATE SET NULL ON DELETE SET NULL;
数据库约束详解
本文详细介绍了数据库中的各种约束,包括主键、唯一性、检查约束等,并深入探讨了外键约束的概念、语法及其删除和更新行为。
1793

被折叠的 条评论
为什么被折叠?



