MySQL-DML【数据操作语言】(图码结合)

目录

🚩DML的定义 

👉DML-添加数据

🎓给指定的字段添加数据

🕶️查询表数据的方式

❗疑惑点一【Affecter rows:行数】 

❗疑惑点二【字符集问题】

🎓给全部字段添加数据

🎓批量添加数据

👉DML—修改数据

👉DML—删除数据 


🚩DML的定义 

DML(Data Manipulation Language):数据操作语言,用来对数据库表中的数据进行增删改

  • insert 增加
  • update修改
  • delete删除

 我们将之前的一篇DDL中的建立表操作,继续用这个表来进行数据的调整。

我们可以看到,我们形成的表中只有数据类型,建立的表结构,而数据库是存储数据的仓库,DDL给我们建立框架,接下来我们要真正的操作DML,对数据库表中的数据进行增删查改。


👉DML-添加数据

🎓给指定的字段添加数据

INSERT INTO 表名 (字段1,字段2,...)VALUES (值1,值2,值3,....);

注意😲:

  1. 插入数据的时候,指定的字段顺序需要与值的顺序是一一对应的。
  2. 字符串和日期型数据应该包含在引号中。
  3. 插入的数据大小,应该在字段的规定范围内。 

我们根据语法的规则,每个字段/值之间都用逗号隔开,指定字段顺序与值一一对应,字符串和日期型数据应该包含在引号中。

🕶️查询表数据的方式

接下来就是查询表数据。查询表数据的方式有俩种:

第一种:

SELECT FROM * 表名;

 第二种:

我们在所在的数据库中的表中查找,当前test表在cl数据库中,所以我们去cl数据库中

❗疑惑点一【Affecter rows:行数】 

这里的Affecter rows:行数,表示你的代码是运行成功的,没有出错,行数1,2,3,4....表示的是进行对数据的操作了几行。添加字段(编号,姓名,年龄/.....)都是一行的,所以对数据的操作就进行一行。

这里显示的rows是5,表明对数据的操作是5行。上面的代码不清楚的,下面会详细解答。


❗疑惑点二【字符集问题】

Incorrect string value: '\xE7\x94\xB7' for column 'gender' at row 1

 Incorrect string value(字符串值不正确): '\xE7\x94\xB7' for column 'gender' at row 1

相信在初次使用的时候,可能会遇到这样的报错。我就是,所以我搜索材料。进行修改归纳总结 ,出现的问题:字符集对应不上,性别“男”为中文字符串,需要使用到utf-8字符集,而默认是使用的是latin1字符集。

CREATE table test(
id int COMMENT'编号',
worknumber varchar(10) COMMENT'员工工号',
workname VARCHAR(10) COMMENT'员工姓名',
gender char(1) COMMENT'员工性别',
age TINYINT UNSIGNED COMMENT'员工年龄',
idcard char(18) COMMENT'员工身份证号',
entrydate date COMMENT'入职时间'
)COMMENT'员工信息';

解决方案:此时应该根据报错的内容修改对应的数据库、表或者字段的字符集

代码如下:
1、修改数据库字符集

alter database db_new(数据库名) charset utf8mb4;

2、修改表字符集

alter table tb(表名) charset=utf8mb4;

3、修改表字符集和校验规则

alter table tb(表名)charset=utf8mb4 collate=utf8mb4_general_ci;

4、修改表字段的字符集和校验规则

alter table tb(表名)modify gender char(1)(字段名+字段数据类型) character set utf8 collate utf8_general_ci;

🎓给全部字段添加数据

INSERT INTO 表名 VALUES(值1,值2...);


🎓批量添加数据

//INSERT INTO 表名 (字段1,字段2,...)VALUES (值1,值2,值3,....),(值1,值2,值3,....);
//INSERT INTO 表名 VALUES (值1,值2,值3,....),(值1,值2,值3,....),(值1,值2,值3,....);


👉DML—修改数据

UPDATE 表名 SET 字段1=值1,字段2=值2,...[WHERE 条件];

注意😲:

        修改的条件可以有,也可以没有,如果没有条件,则会修改整张表的数据。

案例1:修改id为1的数据,将workname修改为cl

案例2:修改id为1的数据,将name修改为cll,gender修改为女

案例3:将所有的员工入职日期改为2008-01-01

没有前提条件就是修改整个表的对应字段的数据。


👉DML—删除数据 

DELETE FROM 表名 [WHERE 条件]

注意😲:

        DELECT语句的条件可以有,也可以没有,如果没有,则删除整张表的所有数据

        DELECT语句不能删除某一个字段的值(可以使用UPDATE)

先给出原表的数据,后面删除数据好对应。 

案例1:删除gender为女的员工

案例2:删除所有的员工

再原来基础删除女员工的基础上,剩下俩行,删除整个表格,就对应的操作数据俩行。


好了,一切为空,从最开始的添加数据,到后来的修改数据,最后删除数据,最后成了空表。

希望你的每一步都走的有意义。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

得帆北区总经理——湛颂:得帆云iPaaS平台是满足企业集成需求的利器

后ERP时代的IT变革 在过去的许多年里,企业的IT发展往往都是根据各业务部门的需求而引入大量系统。十年前,面对制造业的客户群体,当他们已经引入了ERP、CRM、WMS、MES、TMS、HR、LIMS等业务系统的时候,我就在讲一个话题——后ERP时…

YOLOv5算法改进(20)— 如何去写YOLOv5相关的论文(包括论文阅读+规律总结+写作方法)

前言:Hello大家好,我是小哥谈。最近一直在阅读关于YOLOv5的相关论文,读着读着我发现一条可以发论文的规律,特此简单总结一下,希望能够对同学们有所启迪!🌈 前期回顾: YOLOv5算法改进(1)— 如何去改进YOLOv5算法

GitHub commit时出现 无法访问443 Operation timed out的解决办法

GitHub commit时出现 无法访问443 Operation timed out的解决办法 1.问题描述2. 环境3.解决方法4.如果上述方法不行,那就再试一试下面这个方法4.1 首先确认自己的网页可以打开github4.2 按照如下配置http和https代理4.2.1 找端口号 5. 参考链接 1.问题描述 当使用g…

thinkphp 解决跨域的三个方式

1. 在tp入口index.php 加上header //支持跨域 header("Access-Control-Allow-Origin:*"); header(Access-Control-Allow-Methods:*); header(Access-Control-Allow-Headers:x-requested-with, content-type,token); 2. 在route.php加上 allowCrossDomain()&#xff…

吐血整理,Jmeter服务端性能测试-线程阻塞问题案例分析(超细)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、Jstack打印快照…

【HarmonyOS】元服务卡片展示动态数据,并定点更新卡片数据

【关键字】 元服务卡片、卡片展示动态数据、更新卡片数据 【写在前面】 本篇文章主要介绍开发元服务卡片时,如何实现卡片中动态显示数据功能,并实现定时数据刷新。本篇文章通过实现定时刷新卡片中日期数据为例,讲述展示动态数据与更新数据功…

Banana Pi BPI-W3 ArmSoM-W3之RK3588-MIPI-DSI屏幕调试笔记

一. 简介 本文是基于RK3588平台,MIPI屏调试总结。 二. 环境介绍 硬件环境: ArmSoM-W3 RK3588开发板、MIPI-DSI显示屏( ArmSoM官方配件 )软件版本: OS:ArmSoM-W3 Debian11 三. MIPI屏幕调试 3.1 调试总览,调试步骤分…

[尚硅谷React笔记]——第5章 React 路由

目录: 对SPA应用的理解对路由的理解前端路由原理路由的基本使用路由组件与一般组件NavLink的使用封装NavLink组件Switch的使用解决样式丢失问题路由的模糊匹配与严格匹配Redirect的使用嵌套路由向路由组件传递params参数向路由组件传递search参数.向路由组件传递st…

第四章 文件管理 四、文件的物理结构(文件分配方式)

目录 一、文件块,磁盘块 二、连续分配 1、定义: 2、计算方式: 3、注意: 4、优点: 5、缺点: 6、总结 三、链接分配----隐式链接 1、定义: 2、如何实现逻辑块号转物理块号 3、优点&…

J2EE的N层体系结构

J2EE平台采用了多层分布式应用程序模型,实现不同逻辑功能的应用程序被封装到不同的构件中,处于不同层次的构件可被分别部署到不同的机器中。 RMI/IIOP:RMI(Remote Method Invocation,远程方法调用)是Java的…

AUTOSAR AP 硬核知识点梳理(2)— 架构详解

一 AUTOSAR 平台逻辑体系结构 图示逻辑体系结构描述了平台是如何组成的,有哪些模块,模块之间的接口是如何工作的。 经典平台具有分层的软件体系结构。定义明确的抽象层,每个抽象层都有精确定义的角色和接口。 对于应用程序,我们需要考虑使用的软件组件,希望它们是可重用的…

Windows Server扩展卷变灰怎么办?

当Windows Server中的某一个分区,特别是系统(C)分区磁盘空间不足时,您可能需要使用内置磁盘管理工具的“扩展卷”功能扩展分区了。但不幸的是,当您尝试扩展C盘驱动器时,很有可能会出现Windows Server扩展卷…

SystemVerilog Assertions应用指南 Chapter1.38在序列匹配时调用子程序

SVA可以在序列每次成功匹配时调用子程序。同一序列中定义的局部变量可以作为参数传给这些子程序。对于序列的每次匹配,子程序调用的执行与它们在序列定义中的顺序相同。 module sub;logic a, b, clk;initial $vcdpluson();initial begin clk 1b0; a1b0; b1b0; repeat(2) (pos…

python实验16_网络爬虫

实验16:网络爬虫 1.实验目标及要求 (1)掌握简单爬虫方法。 2. 实验主要内容 爬取中国票房网 ① 爬取中国票房网(www.cbooo.cn)2019年票房排行榜前20名的电影相关数据 代码部分: import time from selenium.webdriver impor…

3,4,6,9,?,18

3,4,6,9,?,18 逐步变大的递增数组 分析一: 3 6 -1 4 x 2 4 9 -1 6 x 2 6 ? -1 9 x 2 ? 13 9 18 -1 ? x 2 ? 13 分析二: 4 - 3 1 6 - 4 2 9 - 6 3 ?- 9 4 …

华为OD技术面试-最短距离矩阵(动态规划、广度优先)

背景 记录2023-10-21 晚华为OD三面的手撕代码题,当时没做出来,给面试官说了我的想法,评价:解法复杂了,只是简单的动态规范 或 广度优先算法,事后找资料记录实现方式。 题目 腐烂的橘子 问题描述&#xff…

【计算机网络】UDP的报文结构和注意事项

UDP(User Datagram Protocol,用户数据报协议)是一种无连接的协议,它在传输层中提供了简单、不可靠的数据传输服务。与TCP(Transmission Control Protocol,传输控制协议)不同,UDP不需要建立连接&…

如何理解Go言中的Context?

目前看过除了《go语言程序设计》以外最好的教程:https://www.practical-go-lessons.com 原文:https://www.practical-go-lessons.com/chap-37-context 你将在本章中学到什么? 1.什么是上下文? 2.什么是链表? 3.如何…

基于卷积优化优化的BP神经网络(分类应用) - 附代码

基于卷积优化优化的BP神经网络(分类应用) - 附代码 文章目录 基于卷积优化优化的BP神经网络(分类应用) - 附代码1.鸢尾花iris数据介绍2.数据集整理3.卷积优化优化BP神经网络3.1 BP神经网络参数设置3.2 卷积优化算法应用 4.测试结果…

VMware虚拟机中ubuntu网络连接不上

VMware虚拟机中ubuntu中网络连接不上 解决方案其他虚拟机网络 解决方案 1.选择VMware中编辑-虚拟网络编辑器-更改: 设置为你喜欢的模式,这里为NET模式 2.选中ubuntu虚拟机(关机后的虚拟机),点击:编辑虚拟机…