第七篇:SQL语法-DML-数据操作语言

news2025/1/19 19:43:28

DML英文全称是Data Manipulation Language(数据操作语言),用来对数据库中表的数据记录进行增删改操作。它主要包含以下操作,

  • 添加数据(INSERT)
  • 修改数据(UPDATE)
  • 删除数据(DELETE)


一,添加数据(INSERT)

注意:

  • 插入数据时,指定的字段顺序与值的顺序一一对应
  • 字符串类型和日期类型的数据必须包含在英文引号(单或双均可)中
  • 插入数据的大小要在字段的规定范围内

MySQL常见数据类型及其相应的大小范围查询此篇->

第五篇:MySQL常见数据类型-CSDN博客

(一)给所有字段添加数据

insert into 表名 values(值1,值2,...);

(二)给指定字段添加数据

(在表名之后指定字段)

insert into 表名(字段名1,字段名2,...) values(值1,值2,...);

(三)批量添加数据

(1)批量给全部字段添加数据

(在values后面添多值)

insert into 表名 values(值1,值2,...), (值1,值2,...)...;

(2)批量给指定字段添加数据

(在表名之后指定字段)

insert into 表名(字段名1,字段名2,...) values(值1,值2,...), (值1,值2,...)...;


二,修改(更新)数据(UPDATE)

(注:<尖括号>内的内容是可选项

where之后的条件一般选用一个唯一的字段,如果有多个条件则用【and】连接

例如:

where id=1】表示修改操作将作用于id=1的数据

where name="张三" and gender="女"】表示修改操作将作用于name="张三"且gender="女"的数据

update 表名 set 字段名1=值1, 字段名2=值2,...<where 条件>;

注意注意!

如果没有写<where 条件>,修改操作将作用于表中所有数据,是比较危险的操作,如果是误操作,则会瞬间污染表中所有数据!如果MySQL工具相对智能,此时就会报出警告让你确认运行(相当人性化的设计,SQLyog就没有这个功能,也可能是我没找到开关吧,至于cmd命令行窗口就别想了……),如下图是【HeidiSQL】的警告提示,【HeidiSQL】的安装在本专栏的第六篇博客中有详细介绍->第六篇:MySQL图形化管理工具-CSDN博客


三,删除数据(DELETE)

(注:<尖括号>内的内容是可选项)

delete from 表名 <where 条件>

此处的<where 条件>的规则和二,修改数据(UPDATE)的规则是一模一样的(就在上面,往上翻一下),如果不写的话删除操作将作用于表中所有数据,如果是误操作则会瞬间清空表的所有内容

这操作有多危险就不必赘述了吧……如果没有提前备份sql文件的话,实际开发中真的是靠这一行命令毁一生了/(ㄒoㄒ)/~~(删库跑路,牢底坐穿🤣)

因此如果有图形化管理工具的警告保障,则能避免一步跳崖式的惨案


四,测试

小练习

(保留节目)下面给出一个博主自拟的小练习(下面有详解答案,一定要多写多练阿!),通过这个练习来对DML数据操作的相关命令加以熟练,顺便多熟悉一下上一篇刚安装好的图形化管理工具,博主就拿【HeidiSQL】做演示了——

在完成每一步操作之后,请用查询表内容的命令查看表格内容是否符合预期操作

(懵了吧😂😉,不知道怎么查看表的内容?不是【desc 表名】阿😫,这个是用来查询表结构的,查询表内容到第七篇还没学捏,让阿晴偷偷提前告诉你吧,先用着噢!)

select * from 表名;

1.创建一个名为test的数据库,并在该库中创建一个名为users的表,其中包括4个字段,分别是:id intname varchar(20)gender varchar(1)

直接通过图形化界面输入字段完成创建即可,不使用命令

2.使用【insert】命令,给所有字段添加新数据:id=1, name="keqing", gender="女"

3.使用【insert】命令,给name和gender两个字段添加新数据:name="furina", gender="女"

4.使用【insert】命令,批量给所有字段添加新数据,数据分别是:

id=3, name="tartaglia", gender="男"

id=4, name="zhongli", gender="男"

id=5, name="我先占个位儿"

5.使用【update】命令,给目前表格中唯一一条没有id的数据添加id=2

6.使用【delete】命令,把name="我先占个位儿"的这条奇奇怪怪的数据给删了,记得加<where 条件>

7.使用【delete】命令,故意不加<where 条件>,感受一下【HeidiSQL】的人性化警报提醒,如果你用的是其它图形化管理工具,博主就不保证都有这个功能咯~

对答案

1.创建一个名为test的数据库,并在该库中创建一个名为users的表,其中包括4个字段,分别是:id intname varchar(20)gender varchar(1)

直接通过图形化界面输入字段完成创建即可,不必使用命令

创建test数据库

2.使用【insert】命令,给所有字段添加新数据:id=1, name="keqing", gender="女"

直接在【查询】界面使用命令->(括号内的数据不用带字段名的噢,你不会直接复制上面的吧哈哈😉,这样数据会变成NULL,删掉重新做吧)

insert into users values(1, "keqing", "女");

然后查询表内容的命令->

select * from users;

最后【右键】->【运行】运行代码或者快捷键【F9】直接运行代码

3.使用【insert】命令,给name和gender两个字段添加新数据:name="furina", gender="女"

 跟上面的差不多吧,在表名后面加上指定字段就好了->(给指定字段添加数据,数据和字段的顺序一定要一一对应阿!)

insert into users(name, gender) values("furina", "女");

然后查询表内容的命令->

select * from users;

最后【右键】->【运行】运行代码或者快捷键【F9】直接运行代码,对了,一定记得要把之前的代码删掉或者注释掉再运行,否则之前的代码会被再执行一次的

4.使用【insert】命令,批量给所有字段添加新数据,数据分别是:

id=3, name="tartaglia", gender="男"

id=4, name="zhongli", gender="男"

id=5, name="我先占个位儿", gender="无"

批量添加数据其实就是多加几个括号而已->

insert into users VALUES(3, "tartaglia", "男"), (4, "zhongli", "男"), (5, "我先占个位儿", "无");

5.使用【update】命令,给目前表格中唯一一条没有id的数据修改其id=2

一定要写<where 条件>噢,否则所有数据的id都变成2了!

UPDATE users SET id=2 WHERE NAME="furina";

6.使用【delete】命令,把name="我先占个位儿"的这条奇奇怪怪的数据给删了,记得加<where 条件>

一定要写<where 条件>噢,否则所有数据都会被删除!

delete from users where id=5;

7.使用【delete】命令,故意不加<where 条件>,感受一下【HeidiSQL】的人性化警报提醒,如果你用的是其它图形化管理工具,博主就不保证都有这个功能咯~

小手一抖,表格没有🤣

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1447317.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

云原生之基石-Docker Compose

1. 前言 在上一篇文章中介绍了基本的Docker工具&#xff0c;我们对单个应用程序进行单机单进程部署&#xff0c;制作Dockerfile文件&#xff0c;执行docker build来生成docker镜像&#xff0c; 执行docker run来运行一个容器&#xff0c;自己指定需要的参数如-v&#xff0c;但是…

在Ubuntu22.04上部署FoooCUS2.1

Fooocus 是一款基于 Gradio的图像生成软件&#xff0c;Fooocus 是对 Stable Diffusion 和 Midjourney 设计的重新思考&#xff1a; 1、从 Stable Diffusion 学习&#xff0c;该软件是离线的、开源的和免费的。 2、从 Midjourney 中学到&#xff0c;不需要手动调整&#xff0c;…

【AI】安装ubuntu20.04教程(未完待续)

目录 1 制作ubuntu20.04系统盘1.1 下载ubuntu镜像1.2 使用ultraiso写入镜像 2 安装Ubuntu系统 1 制作ubuntu20.04系统盘 1.1 下载ubuntu镜像 在清华镜像站https://mirrors.tuna.tsinghua.edu.cn/下载ubuntu20.04镜像 路径为/ubuntu-releases/20.04/&#xff0c;下载ubuntu-20…

【教程】C++语言基础学习笔记(七)——Array数组

写在前面&#xff1a; 如果文章对你有帮助&#xff0c;记得点赞关注加收藏一波&#xff0c;利于以后需要的时候复习&#xff0c;多谢支持&#xff01; 【C语言基础学习】系列文章 第一章 《项目与程序结构》 第二章 《数据类型》 第三章 《运算符》 第四章 《流程控制》 第五章…

Promise与async await的作用及应用场景

在Web前端开发中&#xff0c;处理异步操作是非常常见的需求。为了解决这个问题&#xff0c;ES6引入了Promise和后续的async await。本文将介绍Promise和async await的作用&#xff0c;以及在实际开发中的应用场景。 一、Promise的作用及应用场景 Promise是一个表示异步操作最…

【MySQL】学习约束和使用图形化界面创建表

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-iqtbME2KmWpQFQSt {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

综合例题及补充

目录 查询员工的编号、姓名、雇佣日期&#xff0c;以及计算出每一位员工到今天为止被雇佣的年数、月数、天数 计算出年 计算月 计算天数 Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645 查询员工的编号、姓名、雇佣日期&#xff0c…

S32 Design Studio的PE工具

S32 Design Studio软件是NXP公司专门为了方便用户开发S32K1系列芯片的IDE&#xff0c;跟Eclipse比较像。里面有个配套的图形工具Processor Expert&#xff0c;会产生一个后缀名为pe的文件&#xff0c;跟ST的cubemx作用类似。 双击pe文件即可打开pe界面&#xff0c;生成的文件将…

Codeforces Round 925 (Div. 3)

Codeforces Round 925 (Div. 3) Codeforces Round 925 (Div. 3) A. Recovering a Small String 题意&#xff1a;给出一个整数n&#xff0c;为三个26个字母的位置序号的和&#xff0c;输出字典序最小的三个字符的字符串。 思路&#xff1a;直接倒推&#xff0c;顺一遍&…

第6个-滚动动画

Day 6 - Scroll Animation 1. 演示效果 2. 分析思路 布局 所有的内容进行水平垂直居中&#xff0c;可以使用**margin:0 auto;&#xff0c;也可以使用flex**布局&#xff1a; body {background-color: #efedd6;display: flex;flex-direction: column;justify-content: center…

腾讯云幻兽帕鲁服务器配置怎么选择合适?

腾讯云幻兽帕鲁服务器配置怎么选&#xff1f;根据玩家数量选择CPU内存配置&#xff0c;4到8人选择4核16G、10到20人玩家选择8核32G、2到4人选择4核8G、32人选择16核64G配置&#xff0c;腾讯云百科txybk.com来详细说下腾讯云幻兽帕鲁专用服务器CPU内存带宽配置选择方法&#xff…

音视频剪辑|FFMPEG|windows10下的音视频格式转换,遮挡填充,GIF动图制作,背景音频抽取,替换

前言&#xff1a; 最近对于音视频和图像的处理问题比较感兴趣&#xff0c;但发现很多目前需要的功能要么需要付费但不会过于麻烦&#xff0c;要么比较麻烦&#xff0c;很可能某个功能实现需要安装很多软件 例如&#xff0c;视频转GIF动图&#xff0c;该功能的实现要么使用Pho…

VMware清理拖拽缓存 Ubuntu硬盘情况占用分析

这两天在尝试编译Linux源码&#xff0c;我在win上将源码下载下来然后复制到ubuntu上&#xff0c;这一步我粗略看到了三种方法&#xff1a;安装VM tools&#xff0c;就可以使文件正常的在win和ubuntu中复制剪切&#xff1b;使用scp命令将win和linux系统链接起来&#xff1b;使用…

P5440 【XR-2】奇迹 (大模拟dfs+欧拉筛板子+闰年)

传送门https://www.luogu.com.cn/problem/P5440 相信奇迹的人&#xff0c;本身就和奇迹一样了不起。——笛亚 《星游记》 思路历程&#xff1a;很离谱的一题&#xff0c;在理论上并不困难&#xff0c;只要简单dfs欧拉筛就能过。在一开始&#xff0c;我采用了倒着模拟的思路&am…

JavaWeb:关于登录认证的简单拓展

前提介绍 本文基于文章-------JavaWeb&#xff1a;SpringBootWeb登录认证 --黑马笔记 -------再做简单拓展 如果没有关于登录认证知识的基础&#xff0c;可以先看上面所说的的文章&#xff0c;文章在专栏javaweb中&#xff0c;下面我为了大家观看&#xff0c;直接放了链接。…

服务降级(Sentinel)

服务降级 采用 SentinelResource 注解方式实现&#xff0c; 必要的 依赖必须引入 以及 切面Bean 接口代码 RequestMapping("/degrade")SentinelResource(value DEGRADE_RESOURCE_NAME, blockHandler "blockHandlerForDegrade",entryType EntryType.IN…

Excel模板2:进度条甘特图

Excel模板2&#xff1a;进度条甘特图 ‍ 今天复刻B站up【名字叫麦兜的狗狗】的甘特图&#xff1a;还在买Excel模板吗&#xff1f;自己做漂亮简洁的甘特图吧&#xff01;_哔哩哔哩_bilibili 阿里网盘永久分享&#xff1a;https://www.alipan.com/s/cXhq1PNJfdm 当前效果&…

2.13 数组练习

1、选择题 1.1、若有定义语句&#xff1a;int a[3][6]; &#xff0c;按在内存中的存放顺序&#xff0c;a 数组的第10个元素是 B A&#xff09;a[0][4] B) a[1][3] C)a[0][3] D)a[1][4] 解析&#xff1a;二维数组在内存中是以行优先的方式存放的。这意味着首先填充第一行的…

Excel练习:折线图突出最大最小值

Excel练习&#xff1a;折线图突出最大最小值 ​​ 要点&#xff1a;NA值在折现图中不会被绘制&#xff0c;看似一条线&#xff0c;实际是三条线。换成0值和""都不行。 ‍ 查看所有已分享Excel文件-阿里云 ‍ 学习的这个视频&#xff1a;Excel折线图&#xff0c…

java之jvm详解

JVM内存结构 程序计数器 Program Counter Register程序计数器(寄存器) 程序计数器在物理层上是通过寄存器实现的 作用&#xff1a;记住下一条jvm指令的执行地址特点 是线程私有的(每个线程都有属于自己的程序计数器)不会存在内存溢出 虚拟机栈(默认大小为1024kb) 每个线…