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。

相关推荐
Zan1 小时前
SQLite + SQLx 实战:为什么已经发布的数据库迁移文件,绝对不能再修改?
数据库·后端·面试
这个DBA有点耶2 小时前
数据同步的三个工程底线:DDL同步、断点续传、一致性校验——开源CDC的边界与KFS的路径
数据库·dba·代码规范
aiks_yuan3 小时前
MySQL GROUP BY 很慢怎么优化:加了索引反而从 1 秒变 7 秒,Using temporary 该不该消(MySQL 8.2 实测 400 万行)
mysql
SelectDB3 小时前
列式存储为什么适合分析类负载?原理、限制与日志场景应用
数据库
数据库小学妹4 小时前
MySQL大字段治理:行溢出机制、覆盖索引与拆表
数据库·mysql·性能优化
爱吃奥利奥_wen4 小时前
SQL Server 基础语法详解:从建库建表到约束与增删改查
服务器·数据库·oracle
这个DBA有点耶5 小时前
MySQL 8.0不可见索引:删索引怕出事,不删又拖慢写入——中间态怎么用?
数据库·mysql·代码规范
测试界的小码农6 小时前
【图数据库实战进阶(01):从零认识 Neo4j,搭建第一个图数据库项目】
数据库·neo4j
x_SpiderMan7 小时前
搭建Oracle RAC 集群
数据库·oracle