MySql(十二)
目录
MySql约束
1.添加主键约束
语法格式
1)创建一个带主键的表
查看表结构
2)创建表的时候指定主键名称
查看表结构
3)创建一个表然后,然后再使用alter为列添加主键
查看表结构
4)为表添加数据
1---正常数据
2---主键为空数据
3--主键重复数据
5)为表设置自增主键(AUTO_INCREMENT)
查看表结构
插入没有主键的数据
查看插入的数据
2.唯一约束(unique)
查看表结构
测试唯一约束
3.非空约束(not null)
查看表结构
MySql约束
1.添加主键约束
语法格式
字段名 字段类型 primary key
1)创建一个带主键的表
-- 创建一个带主键的表create table user2(-- 设置主键id INT PRIMARY KEY,username VARCHAR(30),sex CHAR(1));
查看表结构
desc user2;
2)创建表的时候指定主键名称
-- 创建表的时候指定主键create table user3(id int,user_name VARCHAR(30),sex char(1),-- 指定主键PRIMARY KEY(id));
查看表结构
desc user3;
3)创建一个表然后,然后再使用alter为列添加主键
-- 创建一个表,然后使用alter添加主键约束create table user4(id int,user_name VARCHAR(30),sex char(1),); -- 使用alter为期添加主键 alter table user4 add PRIMARY key(id);
查看表结构
desc user4;
4)为表添加数据
1---正常数据
-- 添加正常数据INSERT into user4 VALUES (1, '偷走晚霞的人', '男');
2---主键为空数据
-- 添加主键为空的字段 INSERT into user4 VALUES (null, '偷走晚霞的人', '男');
可以看到添加的数据:1048 - Column 'id' cannot be null
3--主键重复数据
-- 添加重复的主键 INSERT into user4 VALUES (1, '惜.己', '男');
可以看到错误:1062 - Duplicate entry '1' for key 'PRIMARY'
5)为表设置自增主键(AUTO_INCREMENT)
-- 创建主键自增的表 CREATE TABLE user5(id INT PRIMARY KEY AUTO_INCREMENT,user_name VARCHAR(30),sex char(1));
查看表结构
可以看到extra ==》这里多了一个auto_increment
插入没有主键的数据
-- 主键为空 的数据 INSERT into user5 VALUES (null, '惜.己', '男');-- 不添加主键数据 INSERT into user5(user_name, sex) VALUES ('小玖','女')
查看插入的数据
select * from user5;
2.唯一约束(unique)
字段名 字段值 unique
.
CREATE table user6(id int PRIMARY KEY AUTO_INCREMENT,user_name VARCHAR(20) UNIQUE,sex char(1));
查看表结构
可以看到user_name的那一个项 UNI
desc user6;
测试唯一约束
INSERT into user6 VALUES (null, '惜.己', '男');INSERT into user6 VALUES (null, '惜.己', '男');
可以看到出现错误:1062 - Duplicate entry '惜.己' for key 'user_name'
3.非空约束(not null)
简单的来说就是,向这个表中添加数据的时候不能为空。属于必填项。否则会报错 1048 - Column 'id' cannot be null
INSERT into user7 VALUES (null,null , '男');
字段名 字段类型 not null
-- 非空约束 create table user7(id INT PRIMARY KEY,user_name VARCHAR(30) not null,sex char(1) );
查看表结构
可以看到user_name 的那个项不为空
相关文章:

MySql(十二)
目录 MySql约束 1.添加主键约束 语法格式 1)创建一个带主键的表 查看表结构 2)创建表的时候指定主键名称 查看表结构 3)创建一个表然后,然后再使用alter为列添加主键 查看表结构 4)为表添加数据 1---正常数据 2---主键…...

51c视觉~3D~合集3
我自己的原文哦~ https://blog.51cto.com/whaosoft/13954440 #SceneTracker 在4D时空中追踪万物!国防科大提出首个长时场景流估计方法 本篇分享 TPAMI 2025 论文SceneTracker: Long-term Scene Flow Estimation Network,国防科大提出首…...
windows11安装编译QtMvvm
windows11安装编译QtMvvm 1 从github下载代码2 官方的Download/Installtion3 自行构建编译QtMvvm遇到的问题3.1 `qmake`问题执行命令报错原因分析qmake报错:找不到编译器 cl解决方案3.2 `make qmake_all`问题执行命令报错原因分析make命令未识别解决方案3.3 缺少`perl`问题执行…...

【2025年电工杯数学建模竞赛A题】光伏电站发电功率日前预测问题+完整思路+paper+源码
本人7年数学建模竞赛经验,历史获奖率百分之百。团队成员都是拿过全国一等奖的硕博,有需要数模竞赛帮助的可以私信我 本题主要涉及数据预测,数据分析,机器学习,时间序列等知识 1.问题背景与问题描述 2.解题思路分析 …...

OpenCv高阶(十九)——dlib关键点定位
文章目录 一、什么是人脸关键点定位?二、关键点模型的下载及关键信息的理解三、dlib关键点定位的简单实现(1)导入必要的库(2)从指定路径读取图像文件(3)创建dlib的正面人脸检测器对象࿰…...

BUUCTF之[ACTF2020 新生赛]BackupFile
打开环境就一句话 找出源文件! 结合题目名字:BackupFile 先用dirsearct扫描网站文件 发现一个index.php.bak ,拼接url下载 打开发现php代码 <?php include_once "flag.php";if(isset($_GET[key])) {$key $_GET[key];if(!is_numeric($key)) {exit…...

头歌之动手学人工智能-Pytorch 之autograd
目录 第1关:Variable 任务描述 编程要求 测试说明 没有伟大的愿望,就没有伟大的天才。——巴尔扎克开始你的任务吧,祝你成功! 第2关:Variable 属性 任务描述 编程要求 测试说明 真正的科学家应当是个幻想家&a…...
OIer常用的软件
前言 现在许多软件的官网多不好找,所以我今天就将常用的一些软件官网地址翻了出来,并简单介绍了他的用法。 正文 1.DEV-C DEV-C 用途:c编译软件,是OIer的生涯之路的必备软件 2.Katex KATex 用途:展现公式的软件&…...
Centos7.x内网环境Jenkins前端打包环境配置
Centos7.x内网环境Jenkins前端打包环境配置 参考地址: https://www.cnblogs.com/guangdelw/p/18763336 https://2048.csdn.net/682c1be8606a8318e857d687.html 前言:环境描述和目标 最近公司新接了一个项目,要求是:需要再桌面…...

Kafka集成Flume/Spark/Flink(大数据)/SpringBoot
Kafka集成Flume Flume生产者 ③、安装Flume,上传apache-flume的压缩包.tar.gz到Linux系统的software,并解压到/opt/module目录下,并修改其名称为flume Flume消费者 Kafka集成Spark 生产者 object SparkKafkaProducer{def main(args:Array[S…...

Scratch节日 | 拯救屈原 | 端午节
端午节快乐! 这款特别为端午节打造的Scratch游戏 《拯救屈原》,将带你走进古代中国,感受历史与文化的魅力! 🏮 游戏介绍 扮演勇敢的探险者,穿越时空回到古代,解锁谜题,完成任务&…...

rabbitmq Direct交换机简介
在实际开发中,需求可能变得复杂,如消息的收发和处理。以支付系统为例,成功支付后需要改变订单状态并通知用户,而失败则不需要。为处理这种情况,提出了使用Direct交换机,它可以根据规则将消息路由到指定队列…...

Git实战--基于已有分支克隆进行项目开发的完整流程
Git克隆项目开发流程 ✅ 一、完整流程概述✅ 二、详细操作步骤Step 1:克隆仓库(如果尚未克隆)Step 2:获取远程分支信息并切换到 feature/ 获取所有远程分支Step 3:创建并切换到你的新分支Step 4:开始开发新…...
MapReduce(期末速成版)
起初在B站看3分钟的速成视频,感觉很多细节没听懂。 具体例子解析(文件内容去重) 对于两个输入文件,即文件A 和文件B,请编写MapReduce 程序,对两个文件进行合并,并剔除 其中重复的内容,得到一个新的输出文件…...
鸿蒙OSUniApp 移动端直播流播放实战:打造符合鸿蒙设计风格的播放器#三方框架 #Uniapp
UniApp 移动端直播流播放实战:打造符合鸿蒙设计风格的播放器 在移动互联网时代,直播已经成为一种主流的内容形式。本文将详细介绍如何使用 UniApp 框架开发一个优雅的直播流播放器,并融入鸿蒙系统的设计理念,实现一个既美观又实用…...

C3、C2f、C3K2、C2PSA的具体结构
YOLOV5 C3 Bottleneck C2f...

2_MCU开发环境搭建-配置MDK兼容Keil4和C51
MCU开发环境搭建-配置MDK兼容Keil4和C51 一、概述 本文以MDK-ARM V5.36版本基础介绍DMK-ARM工程兼容Keil4和C51的配置。 注:在阅读本文前,请先安装和配置完成MDK-ARM(Keil5)。 二、工具包下载 链接: https://pan.baidu.com/s/1Tu2tDD6zRra4xb_PuA1Wsw 提取码: 81pp 三、…...

通过远程桌面连接Windows实例提示“出现身份验证错误,无法连接到本地安全机构”错误怎么办?
本文介绍通过远程桌面连接Windows实例提示“出现身份验证错误无法连接到本地安全机构”错误的解决方案。 问题现象 通过本地电脑内的远程桌面连接Windows实例提示“出现身份验证错误,无法连接到本地安全机构”错误。 问题原因 导致该问题的可能原因如下&#x…...

百度golang研发一面面经
输入一个网址,到显示界面,中间的过程是怎样的 IP 报文段的结构是什么 Innodb 的底层结构 知道几种设计模式 工厂模式 简单工厂模式:根据传入类型参数判断创建哪种类型对象工厂方法模式:由子类决定实例化哪个类抽象工厂模式&#…...

TC3xx学习笔记-启动过程详解(一)
文章目录 前言Firmware启动过程BMHD Check流程ABM启动Internal Flash启动Bootloader ModeProcessing in case no valid BMHD foundProcessing in case no Boot Mode configured by SSW 总结 前言 之前介绍过UCB BMHD的使用,它在启动过程中起着重要的作用࿰…...

Scratch节日 | 六一儿童节抓糖果
六一儿童节怎么能没有糖果?这款 六一儿童节抓糖果 小游戏,让你变身小猫,开启一场甜蜜大作战! 🎮 游戏玩法 帮助小猫收集所有丢失的糖果,收集越多分数越高! 小心虫子一样的“坏糖果”ÿ…...
系统调用与程序接口的关系
程序接口类型 系统调用:是操作系统提供给应用程序的接口 ,允许应用程序请求操作系统执行特定操作,像文件操作(打开、读写、关闭文件 )、进程管理(创建、终止进程 )、设备管理(操作磁…...
从线性方程组角度理解公式 s=n−r(3E−A)
从线性方程组角度理解公式 sn−r(3E−A) 这个公式本质上是 齐次线性方程组解空间维度 的直接体现。下面通过三个关键步骤解释其在线性方程组中的含义: 1. 公式对应的线性方程组 考虑矩阵方程: (3E−A)x0 其中: x 是 n 维未知向量3E−…...

通信算法之280:无人机侦测模块知识框架思维导图
1. 无人机侦测模块知识框架思维导图, 见文末章节。 2. OFDM参数估计,基于循环自相关特性。 3. 无人机其它参数估计...

【Doris基础】Apache Doris中的Coordinator节点作用详解
目录 1 Doris架构概述 2 Coordinator节点的核心作用 2.1 查询协调与调度 2.2 执行计划生成与优化 2.3 资源管理与负载均衡 2.4 容错与故障恢复 3 Coordinator节点的关键实现机制 3.1 两阶段执行模型 3.2 流水线执行引擎 3.3 分布式事务管理 4 Coordinator节点的高可…...
软考 系统架构设计师之考试感悟3
接前一篇文章:软考 系统架构设计师之考试感悟2 上周六(2025年5月24日),本人第三次参加了软考系统架构师的考试。和前两次一样,考了一天,身心俱疲。不过这次感觉比上一次要稍微好点,可能也是考的…...

【Kubernetes-1.30】--containerd部署
文章目录 一、环境准备1.1 三台服务器1.2 基础配置(三台机通用)1.3 关闭 Swap(必须)1.4 关闭防火墙(可选)1.5 加载必要模块 & 配置内核参数 二、安装容器运行时(containerd 推荐)…...
Flutter 嵌套H5 传参数
你可以通过在加载 H5 页面时,将 token 作为 URL 参数拼接,或者通过 WebView 的 JavaScript 通信功能(如 runJavaScript 或 addJavaScriptChannel)传递 token。常用方式如下: 方式一:URL 拼接参数 假设你的…...
什么是线程上下文切换?
导语: 线程上下文切换(Context Switch)是Java并发编程中一个常见但容易被忽视的概念。在高并发场景下,它直接影响系统性能。本文将从面试官角度深入剖析这个话题,帮你理解底层原理、掌握优化思路、规避项目中的常见陷阱…...
Jvm 元空间大小分配原则
JVM元空间(Metaspace)的大小分配原则与系统物理内存密切相关,但并不是直接等比例分配,而是通过一系列参数和JVM的动态管理机制来确定。下面从原理和实际行为两方面详细说明: 1. 元空间(Metaspace࿰…...