news 2026/6/24 5:39:33

MySQL---表的约束(上)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL---表的约束(上)

表的约束,表中一定要有各种约束,通过各种约束,让我们未来插入数据库表中的数据是符合预期的。

约束的本质是通过技术手段,倒逼程序员,插入正确的数据。反过来,站在mysql的视角,凡是插入进来的数据,都是符合数据约束的。

真正约束字段的是数据类型,但是数据类型的约束很单一,需要有一些额外的约束,更好的保证了数据的合法性,从业务逻辑角度保证数据的正确性。

约束的最终目标:保证数据的完整性和可预期性。

表的约束有很多,以下我们将介绍以下几个:

null/not null,default, comment, zerofillprimary
keyauto_incrementunique key

1、空属性

null(默认的)和not null(不为空)。数据库默认字段基本都是字段为空,但是实际开发中,尽可能保证字段不为空,因为数据为空没办法参加运算。
示范:创建一个表
往表里面插入数据

2、default默认值

某一类数据会经常性的出现某个具体的值,可以在一开始就指定好,在需要真实数据的时候,用户可以选择性的使用默认值
不传参数,就是默认值。
总结:default如果设置了,用户将来插入,有具体的数据,就用用户的,没有就用默认的。
如果我们没有明确指定一列要插入,用的是default,如果建表中,对应列默认没有设置default值,无法直接插入。
default和not null 并不冲突,而是相互补充的,当用户想要插入数据的时候,会有NULL,或者是合法数据,当用户忽略这一列的时候,使用默认值(如果设置了)
如果没有设置,就会直接报错。

3、列描述

列描述:comment,没有实际含义,专门用来描述字段,会根据表创建语句保存,用来给程序员或DBA 来进行了解。

创建如下数据表:

not null 和default 一般不需要同时出现,因此default本身有默认值,不会为空

4、zerofill

建一个表

查看表的结构

再插入数据
zerofill是给添加zerofill属性,再进行查找,返回如下的结果:
这次可以看到a的值由原来的1变成00001,这就是zerofill属性的作用,如果宽度小于设定的宽度(这里
设置的是5),自动填充0。要注意的是,这只是最后显示的结果,在MySQL中实际存储的还是1

5、主键

主键:primary key用来唯一的约束该字段里面的数据,不能重复,不能为空,一张表中最多只能有一个主键;主键所在的列通常是整数类型。
插入两个数据
主键约束:主键对应的字段中不能重复,一旦重复,操作失败。
删除主键
alter table表名dropprimary key
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/24 5:38:31

linux程序卡死,Ubuntu网络开启失败

一、临时单次进 Shell(推荐,重启失效,不破坏原有配置)上电 → 出现 Hit any key to stop autoboot 立刻回车进 U-Boot (>)1、沿用你原有 bootargs,末尾追加 init/bin/shshellsetenv bootargs mem48m earlyconpl011,…

作者头像 李华
网站建设 2026/6/24 5:28:09

DeepSeek从入门到精通,2026年最值得用的国产AI

🔥 DeepSeek从入门到精通,2026年最值得用的国产AI免费、好用、中文能力强,DeepSeek凭什么成为国产AI顶流?📖 摘要: DeepSeek是2026年最火的国产AI,免费、上下文长、中文理解能力强。本文从注册开…

作者头像 李华
网站建设 2026/6/24 5:27:21

鸿蒙系统的状态和事件

一、状态1. State 状态装饰器作用: 修饰页面内变量为响应式状态变量:变量值一旦修改,页面绑定该变量的 UI 组件会自动刷新,实现数据驱动界面适用场景 :登录账号密码输入、开关状态、计数、表单数据双向绑定。2. 弹窗 两…

作者头像 李华
网站建设 2026/6/24 5:25:17

数字化导板引导种植的精度评估与误差控制策略研究

摘要数字化导板技术通过CBCT影像采集、计算机辅助设计和3D打印,实现了种植体植入从自由手操作到精准引导的跨越。本文结合临床数据,分析数字化导板引导种植的精度指标、误差来源及控制策略,并基于文献报道的精度范围进行对比评估。关键词&…

作者头像 李华
网站建设 2026/6/24 5:24:55

指纹浏览器 AI 赋能风控:基于大模型(LLM)生成拟人交互行为数据的探索

在指纹浏览器与风控系统的无声战役中,当底层的 V8 时序膨胀、WebGPU 硅基物理拟态、千万级 HMM 指纹工厂的马尔可夫链生成,以及单机千级并发的内存极限压榨全部构建完毕后,对抗的终极战场,正不可避免地从“物理学维度”向“认知学维度”发生史诗级的跃迁。 无数爬虫架构师…

作者头像 李华
网站建设 2026/6/24 5:24:22

【计算机工具类-CI和CD工具Skills】agentic-actions-auditor 技能

审计GitHub Actions工作流中的AI代理集成安全漏洞,包括Claude Code Action、Gemini CLI、OpenAI Codex和GitHub AI Inference。检测攻击者控制的输入到达CI/CD管道中运行的AI代理的攻击向量。 技能概述 agentic-actions-auditor 技能是一个专门用于静态安全分析的技能,用于审…

作者头像 李华