Liunx下MySQL:表的约束

目录

什么是约束

[空属性null/not null](#空属性null/not null)

默认值

列描述

zerofill

主键

自增长


什么是约束

约束就是约束ovO。

约束是为了保证数据的合法性,业务逻辑的正确性逼这程序员做约束之内的事情。

假如约束就是10之内的数字,那么程序员想要插入11,数据库不让程序员插入,就逼着你插入10以内的数字。

空属性null/not null

null

数据库默认的都是空属性。

也就是说插入的时候可以插入一个空值也就是null,注意' '这是空串不是null。

默认值

在插入的时候,如果不插入设定默认值的字段,那么该字段的值就是设定的默认值。

age的默认值就是 0。

列描述

就是注释,使用show create table 可以查看。

zerofill

当数据小于10位数字的时候,会在前面补0,补到10位为止。

主键

主键:primary key用来唯一的约束该字段里面的数据,不能重复,不能为空,一张表中最多只能有一个主键;主键所在的列通常是整数类型。

自增长

auto_increment:当对应的字段,不给值,会自动的被系统触发,系统会从当前字段中已经有的最大值+1操作,得到一个新的不同的值。通常和主键搭配使用,作为逻辑主键。

AUTO_INCREMENT=1001为下次自动插入的值,是当前表的最大值 + 1。

相关推荐
bksczm2 分钟前
InnoDB 页结构详解:页类型、页头页尾、数据行与页目录
数据库·mysql
bksczm1 小时前
InnoDB 行格式详解:DYNAMIC / COMPACT / COMPRESSED / REDUNDANT
java·开发语言·数据库
余槐i1 小时前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
字节跳动开源1 小时前
OpenViking连接业务系统,LLM Wiki一键编译
数据库·开源
进击的荆棘2 小时前
MySQL——数据库基础
数据库·mysql
Decay__2 小时前
22_MySQL 运维自动化平台 —— 部署编排 + 监控 + 巡检 + 告警 + 工单闭环一体化
运维·数据库·sql·mysql·架构
FungLeo3 小时前
成为全栈·基础补充·数据库索引:为什么加了索引还是慢
mysql·postgresql·sqlite·sql优化·数据库索引·成为全栈
codeejun3 小时前
每日一Go·MySQL-11、覆盖索引 & 回表原理
javascript·数据库·mysql
CoderYanger3 小时前
Java EE 进阶:8.MyBatis 操作数据库(入门)(第一弹)
java·数据库·spring·面试·职场和发展·java-ee·mybatis
XLYcmy4 小时前
信息检索报告数字经济赋能城市低碳治理的路径研究——基于“传统数据库 + 生成式人工智能”双轮驱动的检索实践 检索实施与结果分析 Web of Science
数据库·ai·llm·prompt·ssci·deepseek·wos