当前位置: 首页 > news >正文

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
http://www.jsqmd.com/news/1070936/

相关文章:

  • 计算机毕设找人定做:交了钱就跑路
  • A-【浅谈AI安全】之 “用户训练数据隐私泄露风险”
  • 17 | ReadWriteLock:如何快速实现一个完备的缓存?
  • 数字化导板引导种植的精度评估与误差控制策略研究
  • Oracle中的插拔式数据库(CDB/PDB)
  • 鸿蒙PC适配llvm-gcc-compat编译安装第三方库chrono,打造Rust 第三方日期时间处理库
  • 从拉流、叠加到国标多平台分发:SmartMediaKit 多模态融合推流方案设计
  • 16-Redis 与 Redisson 采集:缓存节点如何参与问题定位
  • Web渗透测试实战:SQL注入漏洞从入门到深度防御
  • 智能硬件产品 App 全球发布 第 6 章:IoT App 特殊审核体系
  • 无人机航拍输电线路缺陷检测开源数据集|电力电缆散股异物识别YOLODETR双格式图像库10452期
  • 基于U2-Net与深度度量学习的自动化花粉显微图像分析系统实践
  • Linux线程3.0-线程同步与互斥,C/C++互斥锁。
  • 关于GraalVM的说明
  • 豆包导出pdf怎么调顺序?试试AI 导出鸭智能排序
  • 联邦学习实战:破解非独立同分布数据困局的算法策略与调优指南
  • 鸿蒙PC适配llvm-gcc-compat编译安装第三方库itertools,打造Rust 第三方迭代器增强库
  • 东莞企业做GEO为什么AI不推荐你-信源权重的3个硬指标拆开看
  • 基于MobileNetV3的轻量化人脸年龄估计模型:MobileAgeNet实战指南
  • AI开发-多路径写入一致性:从一次 Debug 到系统性防御
  • 从“会聊天“到“能干活“:用 OpenCode 给自己找个 AI 搭子
  • 【收藏夹必备】写博文还在用“●“做列表?这些图标让文章质感翻倍!
  • 【硬核长文】万字拆解无线网络核心:AP(无线访问接入点)从底层原理到企业级实战调优指南
  • HoRain云--R语言列表操作全指南:从入门到精通
  • 无人机遥感国土目标检测数据集 无人机耕地数据集 无人机道路农田检测 国土遥感地物实例分割数据集 yolo数据集第10759期
  • 五、进程控制
  • 程序员面试翻车?我用了两个月测遍AI面试工具,最终只推荐这一个
  • Redis...2
  • 影刀RPA新手教程:零基础入门完全指南——从下载安装到独立开发你的第一个自动化流程
  • Ntk-aware 插值