MySQL数据库——基本查询(Create)
CRUD:Create(创建)Retrieve(读取)Update(更新)Delete(删除)
1.Create
①单行数据+全列插入
insert [into] table_name [(colume[,colume]……)] values (value_list) [,(value_list)]……
value_list:value,[,value]……
mysql> create table stud(-> id int unsigned primary key auto_increment,-> sn int unsigned unique key,-> name varchar(20) not null,-> qq varchar(32) unique key-> );
Query OK, 0 rows affected (0.02 sec)mysql> desc stud;
+-------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| sn | int(10) unsigned | YES | UNI | NULL | |
| name | varchar(20) | NO | | NULL | |
| qq | varchar(32) | YES | UNI | NULL | |
+-------+------------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)-- id自增,可以忽略不写
mysql> insert into stud (sn,name,qq) values (123,'张飞','1234');
Query OK, 1 row affected (0.00 sec)mysql> select* from stud;
+----+------+--------+------+
| id | sn | name | qq |
+----+------+--------+------+
| 1 | 123 | 张飞 | 1234 |
+----+------+--------+------+
1 row in set (0.00 sec)-- 也可以不指定列进行全列插入
mysql> insert into stud values (10,124,'关羽','1236');
Query OK, 1 row affected (0.00 sec)mysql> select* from stud;
+----+------+--------+------+
| id | sn | name | qq |
+----+------+--------+------+
| 1 | 123 | 张飞 | 1234 |
| 10 | 124 | 关羽 | 1236 |
+----+------+--------+------+
2 rows in set (0.00 sec)-- 也可以省略into
mysql> insert stud values (11,125,'刘备','1238');
Query OK, 1 row affected (0.01 sec)mysql> select* from stud;
+----+------+--------+------+
| id | sn | name | qq |
+----+------+--------+------+
| 1 | 123 | 张飞 | 1234 |
| 10 | 124 | 关羽 | 1236 |
| 11 | 125 | 刘备 | 1238 |
+----+------+--------+------+
3 rows in set (0.00 sec)
②多行数据+指定列插入
-- 多行插入
mysql> insert stud values (12,126,'曹操','1231'),(13,127,'许攸','1233');
Query OK, 2 rows affected (0.01 sec)
Records: 2 Duplicates: 0 Warnings: 0mysql> select* from stud;
+----+------+--------+------+
| id | sn | name | qq |
+----+------+--------+------+
| 1 | 123 | 张飞 | 1234 |
| 10 | 124 | 关羽 | 1236 |
| 11 | 125 | 刘备 | 1238 |
| 12 | 126 | 曹操 | 1231 |
| 13 | 127 | 许攸 | 1233 |
+----+------+--------+------+
5 rows in set (0.00 sec)-- 指定列进行多行插入
mysql> insert stud (sn,name,qq) values (128,'孙权','1235'),(129,'诸葛亮','1232');
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0mysql> select* from stud;
+----+------+-----------+------+
| id | sn | name | qq |
+----+------+-----------+------+
| 1 | 123 | 张飞 | 1234 |
| 10 | 124 | 关羽 | 1236 |
| 11 | 125 | 刘备 | 1238 |
| 12 | 126 | 曹操 | 1231 |
| 13 | 127 | 许攸 | 1233 |
| 14 | 128 | 孙权 | 1235 |
| 15 | 129 | 诸葛亮 | 1232 |
+----+------+-----------+------+
7 rows in set (0.00 sec)
③插入否则更新
如果由于主键或者唯一键对应的值已经存在而导致插入失败,可以选择进行同步更新操作,即将原数据不一样的值替换为自己要改的
mysql> insert [into] stud values (10,130,'lvbu','4321')
on duplicate key update sn=130,name='lvbu',qq='4321';
-- 主键冲突
mysql> insert stud values (10,130,'lvbu','4321');
ERROR 1062 (23000): Duplicate entry '10' for key 'PRIMARY'
-- 唯一键冲突
mysql> insert stud values (16,124,'lvbu','4321');
ERROR 1062 (23000): Duplicate entry '124' for key 'sn'
-- 更新
mysql> insert stud values (10,130,'lvbu','4321') on duplicate key update sn=130,name='lvbu',qq='4321';
Query OK, 2 rows affected (0.00 sec)mysql> select * from stud;
+----+------+-----------+------+
| id | sn | name | qq |
+----+------+-----------+------+
| 1 | 123 | 张飞 | 1234 |
| 10 | 130 | lvbu | 4321 |
| 11 | 125 | 刘备 | 1238 |
| 12 | 126 | 曹操 | 1231 |
| 13 | 127 | 许攸 | 1233 |
| 14 | 128 | 孙权 | 1235 |
| 15 | 129 | 诸葛亮 | 1232 |
+----+------+-----------+------+
7 rows in set (0.00 sec)
影响的数据行数
-- 此时表中没有数据,直接插入,qq=1111,影响一行数据
mysql> insert stud values (16,131,'貂蝉','1111') on duplicate key update sn=131,name='貂蝉',qq='1122';
Query OK, 1 row affected (0.00 sec)-- 此时表中已有id=16,数据冲突,所以更新,数据qq变为1122,影响两行数据
mysql> insert stud values (16,131,'貂蝉','1111') on duplicate key update sn=131,name='貂蝉',qq='1122';
Query OK, 2 rows affected (0.00 sec)-- 此时表中有冲突数据,但冲突数据的值和 update 的值相等,不影响数据
mysql> insert stud values (16,131,'貂蝉','1111') on duplicate key update sn=131,name='貂蝉',qq='1122';
Query OK, 0 rows affected (0.00 sec)mysql> select * from stud;
+----+------+-----------+------+
| id | sn | name | qq |
+----+------+-----------+------+
| 1 | 123 | 张飞 | 1234 |
| 10 | 130 | lvbu | 4321 |
| 11 | 125 | 刘备 | 1238 |
| 12 | 126 | 曹操 | 1231 |
| 13 | 127 | 许攸 | 1233 |
| 14 | 128 | 孙权 | 1235 |
| 15 | 129 | 诸葛亮 | 1232 |
| 16 | 131 | 貂蝉 | 1122 |
+----+------+-----------+------+
8 rows in set (0.00 sec)
④替换
把insert
换成replace
-- 插入新数据
mysql> replace into stud (sn,name,qq) values (140,'许攸','4322');
Query OK, 1 row affected (0.00 sec)mysql> select * from stud;
+----+------+-----------+------+
| id | sn | name | qq |
+----+------+-----------+------+
| 1 | 123 | 张飞 | 1234 |
| 10 | 130 | lvbu | 4321 |
| 11 | 125 | 刘备 | 1238 |
| 12 | 126 | 曹操 | 1231 |
| 13 | 127 | 许攸 | 1233 |
| 14 | 128 | 孙权 | 1235 |
| 15 | 129 | 诸葛亮 | 1232 |
| 16 | 131 | 貂蝉 | 1122 |
| 17 | 140 | 许攸 | 4322 |
+----+------+-----------+------+
9 rows in set (0.00 sec)-- 插入不能重复的数据
mysql> replace into stud (sn,name,qq) values (140,'许攸1','4322');
Query OK, 2 rows affected (0.01 sec)-- id会继续增,这里其实相当于继续添加一行然后删除原来的数据
mysql> select * from stud;
+----+------+-----------+------+
| id | sn | name | qq |
+----+------+-----------+------+
| 1 | 123 | 张飞 | 1234 |
| 10 | 130 | lvbu | 4321 |
| 11 | 125 | 刘备 | 1238 |
| 12 | 126 | 曹操 | 1231 |
| 13 | 127 | 许攸 | 1233 |
| 14 | 128 | 孙权 | 1235 |
| 15 | 129 | 诸葛亮 | 1232 |
| 16 | 131 | 貂蝉 | 1122 |
| 18 | 140 | 许攸1 | 4322 |
+----+------+-----------+------+
9 rows in set (0.00 sec)-- 1 row affected: 表中没有冲突数据,数据被插入
-- 2 row affected: 表中有冲突数据,删除后重新插入
相关文章:
MySQL数据库——基本查询(Create)
CRUD:Create(创建)Retrieve(读取)Update(更新)Delete(删除) 1.Create ①单行数据全列插入 insert [into] table_name [(colume[,colume]……)] values (value_list) […...

spring-security-1-快速入门
1 功能 身份认证(authentication)授权(authorization)防御常见攻击 身份认证:常见账号密码登录,短信登录 授权:什么样的角色,能看见什么菜单,能访问哪些接口。 2 pom <dependency><groupId>org.springf…...

5 大场景上手通义灵码企业知识库 RAG
大家好,我是通义灵码,你的智能编程助手!最近我又升级啦,智能问答功能全面升级至 Qwen2,新版本在各个方面的性能和准确性都得到了显著提升。此外,行间代码补全效果也全面优化,多种编程语言生成性…...

免费远程控制电脑的软件有哪些?
什么是远程控制? 远程控制是一种通过网络从一台设备操作另一台设备的技术。连接后,用户可以直接远程操作那台电脑进行各种操作。随着科技的不断进步和用户需求的增加,远程控制市场日益蓬勃。远程控制不仅应用于远程办公和远程教学࿰…...

Linux软件包yum
目录 Linux软件包管理器 yum关于rzsz注意事项查看软件包如何安装软件卸载命令 Linux开发工具Linux编辑器-vim使用1. vim的基本概念2. vim的基本操作3. vim正常模式命令集4. vim末行模式命令集5. vim操作总结 小彩蛋 Linux软件包管理器 yum 软件包 在Linux下安装软件ÿ…...
网页的切换与嵌套
网页的切换与嵌套 网页的切换 在浏览器窗口中如果点击超链接标签会在当前的浏览器窗口中显示新的数据,但有些超链接标签点击后却会在一个新的窗口显示数据,这种情况下就无法对新的开的窗口页面进行操作了。 基于这种情况,我们就需要使用dri…...

基于飞桨框架的稀疏计算使用指南
本文作者-是 Yu 欸,华科在读博士生,定期记录并分享所学知识,博客关注者5w。本文将详细介绍如何在 PaddlePaddle 中利用稀疏计算应用稀疏 ResNet,涵盖稀疏数据格式的础知识、如何创建和操作稀疏张量,以及如何开发和训练…...

启明云端WT32C3-S6物联网模块,乐鑫ESP32-C3芯片技术应用
随着物联网技术的飞速发展,智能设备在我们生活中的应用越来越广泛。从智能电网到远程医疗,从楼宇自动化到智能家居,这些技术正在改变我们的生活方式。 在这样的背景下,启明云端推出的WT32C3-S6 WiFi模块以其低功耗、高性价比的特…...

超越流水线,企业研发规范落地新思路
作者:子丑 内容大纲: 1、研发规范≠流程约束 2、自动化工具→研发规范载体 3、研发规范在工具上的落地示例 4、研发规范的选型方法与常见实践 研发规范≠流程约束 这个故事特别适合研发规范的场景,我们要避免成为把猫绑在柱子上的信众…...

财务会计与管理会计(四)
文章目录 月度数据统计分析OFFSET函数在图表分析中的应用 多种费用组合分析图SUMPRODUCT函数 省公司全年数据分析模板INDIRECT、OFFSET函数 多公司分季度数据筛选VLOOKUP、IFERROR函数的应用 淘宝后台数据分析OFFSET函数在跨表取数中的应用 燃气消耗台账数据统计分析图SUMPRODU…...
回归分析系列1-多元线性回归
03 多元线性回归 3.1 简介 多元线性回归是简单线性回归的扩展,允许我们同时研究多个自变量对因变量的影响。多元回归模型可以表示为: 其中,x1,x2,…,xp是 p 个自变量,β0 是截距,β1,β2,…,βp是对应的回归系数&…...
web小游戏开发:拼图——蜂巢拼图
web小游戏开发:拼图——蜂巢拼图 蜂巢拼图游戏规则调整选项切图计算六边形的宽和高铺上背景画出蜂巢制作图块游戏方法打乱排列拖拽图块开始拖拽拖拽移动放置图块小结蜂巢拼图 之前我们已经完成了长方形的拼图代码,包括了三个游戏方式,并讨论了带咬合齿的游戏代码该如何制作…...

springCloud集成activiti5.22.0流程引擎(分支)
springCloud集成activiti5.22.0流程引擎 点关注不迷路,欢迎再访! 精简博客内容,尽量已行业术语来分享。 努力做到对每一位认可自己的读者负责。 帮助别人的同时更是丰富自己的良机。 文章目录 springCloud集成activiti5.22.0流程引擎一.Sprin…...

ppt模板免费网站有哪些?自动美化工具推荐
新的8月,是时候以全新面貌迎接高效办公挑战了! 想要你的PPT演示脱颖而出,却苦于找不到精美又免费的模板? 别担心,今天我来告诉你们:哪个软件有精美免费ppt模板? 今天我为你们精心汇总了6款PPT…...

java实现解析pdf格式发票
为了减少用户工作量及误操作的可能性,需要实现用户上传PDF格式的发票,系统通过解析PDF文件获取发票内容,并直接将其写入表单。以下文章记录了功能实现的代码。 发票样式 发票内容解析 引用Maven 使用pdfbox <dependency><groupI…...

数据结构初阶——算法复杂度超详解
文章目录 1. 数据结构前言1. 1 数据结构1. 2 算法 2. 算法效率2. 1 复杂度的概念 3. 时间复杂度3. 1 大O的渐进表示法3. 2 时间复杂度计算示例3. 2. 1 示例13. 2. 2 示例23. 2. 3 示例33. 2. 4 示例43. 2. 5 示例53. 2. 6 示例63. 2. 7 示例7 4. 空间复杂度4. 1 空间复杂度计算…...
ArcGIS Pro SDK (十二)布局 4 预定义的形状和箭头
ArcGIS Pro SDK (十二)布局 4 预定义的形状和箭头 文章目录 ArcGIS Pro SDK (十二)布局 4 预定义的形状和箭头1 创建预定义的形状图形元素2 创建预定义的形状图形元素3 创建预定义的形状图形元素4 创建线箭头元素环境:Visual Studio 2022 + .NET6 + ArcGIS Pro SDK 3.0 1 …...
在 Ubuntu 14.04 服务器上安装 ISPConfig3 的方法
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 简介 虽然命令行是一个强大的工具,可以让您在许多情况下快速轻松地工作,但在某些情况下,可视化界面…...

ELK学习笔记
ElasticStack分布式日志系统概述 Elasticsearch: 一个分布式搜索引擎,能够快速存储、搜索和分析大量数据。核心概念包括索引(Index)、文档(Document)和分片(Shard)。使用 RESTful API 进行数据操…...

Python+Selenium+Pytest+POM自动化测试框架封装详解
1、测试框架简介 1)测试框架的优点 代码复用率高,如果不使用框架的话,代码会显得很冗余。可以组装日志、报告、邮件等一些高级功能。提高元素等数据的可维护性,元素发生变化时,只需要更新一下配置文件。使用更灵活的…...
【Linux】shell脚本忽略错误继续执行
在 shell 脚本中,可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行,可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令,并忽略错误 rm somefile…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...

CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...

Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...
BLEU评分:机器翻译质量评估的黄金标准
BLEU评分:机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域,衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标,自2002年由IBM的Kishore Papineni等人提出以来,…...