什么是约束
•
为了保证数据的一致性和完整性,
SQL
规范以约
束的方式对表数据进行额外的条件限制。
•
约束是表级的强制规定
•
可以在创建表时规定约束(通过
CREATE
TABLE
语句),或者在表创建之后也可以(通
过
ALTER TABLE
语句)
约 束
•
有以下六种约束
:
–
NOT NULL
非空约束,规定某个字段不能为空
–
UNIQUE
唯一约束,规定某个字段在整个表中是唯一的
–
PRIMARY KEY
主键
(
非空且唯一
)
–
FOREIGN KEY
外键
–
CHECK
检查约束
–
DEFAULT
默认值
注意:
MySQL
不支持
check
约束,但可以使用
check
约束,而没有任何效果;
具体细节可以参阅
W3Cschool
手册
根据约束数据列的限制,
约束可分为:
–
单列约束:每个约束只约束一列
–
多列约束:每个约束可约束多列数据
•
根据约束的作用范围
,约束可分为:
–
列级约束只能作用在一个列上,跟在列的定义后面
–
表级约束
可以作用在多个列上,不与列一起,而是
单独定义
注意: