MySQL的基础操作——约束(上)——期末快速复习

文章目录

一、约束的基本概念


1.非空约束

如果在创建表的时候在创建字段的时候在后面加 not null,那就是在插入数据的时候这个字段不能省略,这个myclass中,如果insert into myclass (class_room)values ('一班');会报错
2.default默认值约束

如果后面带了default ,插入数据不带上这个字段名的话就会默认是你给的那个值。
注意:如果非空约束和default一般不一起写,因为你不写default,mysqld会自动在你的表结构加上,一般是default NULL,但不是真正意义的default,就是用来站位的,因为你加了not nulll约束的话,不显示写字段名的话也会报错,错误详细是没有默认值default,所以最终的结论是如果不能为空的字段就应该在插入的时候显式地写出来,而且我们一般都会默认全表插入。
3.zerofill

就是你是int类型的字段,你如果显示在创表时的命令如上图,就会显示在创表时mysqld做优化后实际的SQL语句,你会发现是int(10),如果在字段创建时加了zerofill时你插入的数据比如a插入1,它显示就会是0000000001,表示的意思就是1,只是他显示的长度为int后面的长度,当然你也可以显示给值,int(4)等多少就行,如果大于你给的长度那就正常显示数据,如果小于,就会在前面补零。
4.主键约束

简单来讲就是在字段后面加了这个的话,插入多个数据时,这个字段的数据就不能重复,重复会报错,一个表只有能有一个主键但可以是多个字段有主键约束,在后面创建表时最后这样写 primary key('字段名','字段名');

建议去自己去敲一下SQL命令,实践能更好记住

相关推荐
名字还没想好☜8 小时前
Python f-string 进阶:数字格式化、对齐填充、调试 = 号与嵌套表达式
开发语言·数据库·python·字符串格式化·f-string
ltl8 小时前
Serverless 数据库弹性理论:Neon 与 Aurora Serverless v2
数据库
Dxy12393102169 小时前
Python 如何使用 MySQL 的事务
python·mysql
marvelyu12 小时前
每天10分钟学会OceanBase系列(Day 20):跨机房容灾实战——构建多数据中心高可用架构
java·大数据·数据库
ZCBUS实时计算13 小时前
金融证券实时数仓建设实践:轻量化实时计算平台落地,实现交易数据端到端秒级处理
大数据·数据库·数据仓库·金融·flink·dba·etl
zd20057213 小时前
海洋微生物数据库
数据库·宏基因组
海上小飞龙13 小时前
Redis 分布式锁原理:从 SET NX EX 到 Redisson 看门狗
数据库·redis·分布式
xiaoye-duck14 小时前
MySQL 表约束全解:从基础约束到外键关联规则
数据库·mysql
Hammer_Hans14 小时前
DFT笔记98
java·开发语言·数据库
迪康Defender15 小时前
从静态存储到动态流转:终端透明加密两种模式实战解析
运维·服务器·网络·数据库·其他