在SQL标准中,一共规定了6种不同的约束,
包括非空约束,唯一约束和检查约束等,而在MySQL中是不支持检查约束的,所以这篇文章先对其余5种约束做一个详解和练习。
1. 约束的概念
约束是作用于表中列上的规则,用于限制加入表的数据。
例如,作为主键的列一定是非空的唯一的,否则将无法对数据进行区分。约束的存在保证了数据库中数据的正确性、有效性和完整性。所以约束在数据库设计中是非常重要的。
2. 约束的分类
前面说到SQL标准把约束分为了6大类,分别是非空约束,唯一约束,主键约束,检查约束,默认约束和外键约束,添加约束时我们只需要在SQL中添加关键词,便可以限制表中的数据。
约束类型 | 功能 |
---|---|
非空约束 NOT NULL | 保证列中所有的数据不能有null值 |
唯一约束 UNIQUE | 保证列中所有数据各不相同 |
主键约束 PRIMARY KEY | 主键是一行数据的唯一标识,要求非空且唯一 |
检查约束 CHECK | 保证列中的值满足某一条件 |
默认约束 DEFAULT | 保存数据时,未指定值则采用默认值 |
外键约束 FOREIGN KEY |