MySQL 约束 —— 保证数据完整性的核心
一、约束的作用
约束是对表中字段的规则限制,用于保证数据的正确性、唯一性和完整性,避免脏数据产生。
二、常用约束类型
| 约束名称 | 关键字 | 作用 |
|---|---|---|
| 主键约束 | PRIMARY KEY | 唯一标识记录,非空且唯一 |
| 非空约束 | NOT NULL | 字段值不能为 NULL |
| 唯一约束 | UNIQUE | 字段值唯一(可 NULL) |
| 外键约束 | FOREIGN KEY | 关联两张表,保证数据一致性 |
| 默认约束 | DEFAULT | 字段默认值 |
| 自增约束 | AUTO_INCREMENT | 主键自动递增(仅 INT 类型) |
三、约束使用示例
1. 创建表时添加约束(回顾)
说明:ON DELETE CASCADE表示当主表(user)的记录被删除时,从表(order_info)关联记录也自动删除。
2. 给已有表添加约束
3. 删除约束
总结
主键约束是核心,保证记录唯一性,通常搭配自增约束使用;
外键约束关联多表数据,需注意主从表的删除 / 更新规则;
WHERE 筛选原始数据,HAVING 筛选分组后的数据。