MySQL的约束
1、约束的概念和分类:
① 约束的概念:
约束是作用于表中列上的规则,用于显示加入表中的数据
约束的存在保证了数据库中数据的正确性、有效性、完整性
② 约束的分类:
约束名称 |
描述 |
关键字 |
非空约束 |
保证列中所有数据不能有NULL值 |
NOT NULL |
唯一约束 |
保证列中所有数据各不相同 |
UNIQUE |
主键约束 |
主键是一行数据中的唯一标识,要求非空且唯一 |
PRIMARY KEY |
检查约束 |
保证列中的值满足某一条件(MySQL不支持) |
CHECK |
默认约束 |
保存数据时,未指定值则采用默认值 |
DEFAULT |
外键约束 |
外键用来让两个表的数据之间建立连接,保证数据的一致性和完整性 |
FOREIGN KEY |
自动增长 |
当列是数字类型并且唯一约束 |
auto_increment |
提示:MySQL不支持检查约
2、约束的运用
1、约束用于在创建表单的时候使用,如下图:
提示:
① 创建表后添加非空约束:ALTER TABLE 表名 MODIFY 字段名 数据类型 NOT NULL;
删除已有的非空约束:ALTER TABLE 表名 MODIFY 字段名 数据类型;
② 创建表后添加唯一约束:ALTER TABLE 表名 MODIFY 字段名 数据类型 UNIQUE;
删除已有的唯一约束:ALTER TABLE 表名 DROP INDEX 字段名;
③ 创建表后添加主键约束:ALTER TABLE 表名 ADD PRIMARY KEY(字段名);
删除已有的主键约束:ALTER TABLE 表名 DROP PRIMARY KEY;
④ 创建表后添加默认约束:ALTER TABLE 表名 ALTER 列名 SET DEFAILT 默认值;
删除已有的默认约束:ALTER TABLE 表名 ALTER 列名 DROP DEFAILT;
3、通过插入数据来验证各个约束的功能:
外键约束
概念:外键用来让两个表的数据之间建立连接,保证数据的一致性和完整性
语法:
1、创建表时添加外键约束:
2、创建表后添加外键:
ALTER TABLE 表名 ADD CONSTRAINT 外键名 FOREIGN KEY(外键字段名) REFERENCES 主表名称(主表列名);
ALTER TABLE emp ADD CONSTRAINT fk_emp_dept FOREIGN KEY(dept_id) REFERENCES dept(id);
3、删除外键约束:
ALTER TABLE 表名DROP FOREIGN KEY 外键名称;
ALTER TABLE emp DROP FOREIGN KEY fk_emp_dept;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南