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

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的正面人脸检测器对象&#xff0…...

BUUCTF之[ACTF2020 新生赛]BackupFile

打开环境就一句话 找出源文件! 结合题目名字&#xff1a;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关&#xff1a;Variable 任务描述 编程要求 测试说明 没有伟大的愿望&#xff0c;就没有伟大的天才。——巴尔扎克开始你的任务吧&#xff0c;祝你成功&#xff01; 第2关&#xff1a;Variable 属性 任务描述 编程要求 测试说明 真正的科学家应当是个幻想家&a…...

OIer常用的软件

前言 现在许多软件的官网多不好找&#xff0c;所以我今天就将常用的一些软件官网地址翻了出来&#xff0c;并简单介绍了他的用法。 正文 1.DEV-C DEV-C 用途&#xff1a;c编译软件&#xff0c;是OIer的生涯之路的必备软件 2.Katex KATex 用途&#xff1a;展现公式的软件&…...

Centos7.x内网环境Jenkins前端打包环境配置

Centos7.x内网环境Jenkins前端打包环境配置 参考地址&#xff1a; https://www.cnblogs.com/guangdelw/p/18763336 https://2048.csdn.net/682c1be8606a8318e857d687.html 前言&#xff1a;环境描述和目标 最近公司新接了一个项目&#xff0c;要求是&#xff1a;需要再桌面…...

Kafka集成Flume/Spark/Flink(大数据)/SpringBoot

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

Scratch节日 | 拯救屈原 | 端午节

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

rabbitmq Direct交换机简介

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

Git实战--基于已有分支克隆进行项目开发的完整流程

Git克隆项目开发流程 ✅ 一、完整流程概述✅ 二、详细操作步骤Step 1&#xff1a;克隆仓库&#xff08;如果尚未克隆&#xff09;Step 2&#xff1a;获取远程分支信息并切换到 feature/ 获取所有远程分支Step 3&#xff1a;创建并切换到你的新分支Step 4&#xff1a;开始开发新…...

MapReduce(期末速成版)

起初在B站看3分钟的速成视频&#xff0c;感觉很多细节没听懂。 具体例子解析(文件内容去重) 对于两个输入文件&#xff0c;即文件A 和文件B&#xff0c;请编写MapReduce 程序&#xff0c;对两个文件进行合并&#xff0c;并剔除 其中重复的内容&#xff0c;得到一个新的输出文件…...

鸿蒙OSUniApp 移动端直播流播放实战:打造符合鸿蒙设计风格的播放器#三方框架 #Uniapp

UniApp 移动端直播流播放实战&#xff1a;打造符合鸿蒙设计风格的播放器 在移动互联网时代&#xff0c;直播已经成为一种主流的内容形式。本文将详细介绍如何使用 UniApp 框架开发一个优雅的直播流播放器&#xff0c;并融入鸿蒙系统的设计理念&#xff0c;实现一个既美观又实用…...

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实例提示“出现身份验证错误&#xff0c;无法连接到本地安全机构”错误。 问题原因 导致该问题的可能原因如下&#x…...

百度golang研发一面面经

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

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的使用&#xff0c;它在启动过程中起着重要的作用&#xff0…...

Scratch节日 | 六一儿童节抓糖果

六一儿童节怎么能没有糖果&#xff1f;这款 六一儿童节抓糖果 小游戏&#xff0c;让你变身小猫&#xff0c;开启一场甜蜜大作战&#xff01; &#x1f3ae; 游戏玩法 帮助小猫收集所有丢失的糖果&#xff0c;收集越多分数越高&#xff01; 小心虫子一样的“坏糖果”&#xff…...

系统调用与程序接口的关系

程序接口类型 系统调用&#xff1a;是操作系统提供给应用程序的接口 &#xff0c;允许应用程序请求操作系统执行特定操作&#xff0c;像文件操作&#xff08;打开、读写、关闭文件 &#xff09;、进程管理&#xff08;创建、终止进程 &#xff09;、设备管理&#xff08;操作磁…...

从线性方程组角度理解公式 s=n−r(3E−A)

从线性方程组角度理解公式 sn−r(3E−A) 这个公式本质上是 ​齐次线性方程组解空间维度 的直接体现。下面通过三个关键步骤解释其在线性方程组中的含义&#xff1a; 1. ​公式对应的线性方程组 考虑矩阵方程&#xff1a; (3E−A)x0 其中&#xff1a; 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

接前一篇文章&#xff1a;软考 系统架构设计师之考试感悟2 上周六&#xff08;2025年5月24日&#xff09;&#xff0c;本人第三次参加了软考系统架构师的考试。和前两次一样&#xff0c;考了一天&#xff0c;身心俱疲。不过这次感觉比上一次要稍微好点&#xff0c;可能也是考的…...

【Kubernetes-1.30】--containerd部署

文章目录 一、环境准备1.1 三台服务器1.2 基础配置&#xff08;三台机通用&#xff09;1.3 关闭 Swap&#xff08;必须&#xff09;1.4 关闭防火墙&#xff08;可选&#xff09;1.5 加载必要模块 & 配置内核参数 二、安装容器运行时&#xff08;containerd 推荐&#xff09…...

Flutter 嵌套H5 传参数

你可以通过在加载 H5 页面时&#xff0c;将 token 作为 URL 参数拼接&#xff0c;或者通过 WebView 的 JavaScript 通信功能&#xff08;如 runJavaScript 或 addJavaScriptChannel&#xff09;传递 token。常用方式如下&#xff1a; 方式一&#xff1a;URL 拼接参数 假设你的…...

什么是线程上下文切换?

导语&#xff1a; 线程上下文切换&#xff08;Context Switch&#xff09;是Java并发编程中一个常见但容易被忽视的概念。在高并发场景下&#xff0c;它直接影响系统性能。本文将从面试官角度深入剖析这个话题&#xff0c;帮你理解底层原理、掌握优化思路、规避项目中的常见陷阱…...

Jvm 元空间大小分配原则

JVM元空间&#xff08;Metaspace&#xff09;的大小分配原则与系统物理内存密切相关&#xff0c;但并不是直接等比例分配&#xff0c;而是通过一系列参数和JVM的动态管理机制来确定。下面从原理和实际行为两方面详细说明&#xff1a; 1. 元空间&#xff08;Metaspace&#xff0…...