第四章 约束
前言
上一章表操作中提到了PRIMARY KEY,UNIQUE KEY,DEFAULT,NUT NULL四种约束。这一章将系统讲一下约束。
概要介绍
- 约束的作用:保证数据的完整性和一致性;
- 约束的分类:表级约束和列级约束;
- 前言中列举的为列级约束,表级约束就是FOREIGN KEY,本章将着重介绍FOREIGN KEY;
FOREIGN KEY
作用
- 保持数据的一致性,完整性;
- 实现一对一或一对多的关系;
约束要求
- 父表与子表必须使用相同的存储引擎且只能为InnoDB,禁止使用临时表;
- 外键列和参照列必须具有相似的数据类型;其中数字的长度和是否有符号位必须相同;而字符的长度可以不同;
- 外键列和参照列必须创建索引,如果参照列没有索引,Mysql将自动创建索引;
创建
关键词:FOREIGH KEY (外键列) REFERENCES tab_name (参数列);