DML之操作数据表

1. 插入数据

(1). 前言

前文我们实现了如果创建表,接下来我们将学习如何向数据表中插入数据.插入有两种方式.

(2). 方式1 : 

情况1 : 

  • 使用该语法一次只能向表中插入一条记录.
  • 为表中的任意字段按默认的顺序插入数据.
  • 值列表中需要为表的每一个字段指定值.并且值的顺序必须和数据表中的字段定义时的顺序相同.

e4225d554b0743718353aed3b0957ea0.png


情况2 : 

  • 为表的指定字段插入数据,就是在INSERT TO语句中只向部分字段插入值,而其他字段的值为表定义时的默认值.
  • 在INSERT语句中随意列出列名,一旦列出,VALUES中要插入的数据必须和指定时的字段相匹配.如果类型不同,将无法完成插入.且会报错.

1ba42d8bc5f7482094d003e04a46319f.png


情况3 : 

  • INSERT语句可以同时向数据表中插入多条记录.插入的时候指定多个值列表.每个值列表之间逗号分隔.
  • 一个同时插入多行记录时的INSERT语句等同于多个单行插入的INSERT语句.但单个的INSERT语句在处理过程中效率更高.因为在MySQL中,执行单个INSERT语句插入多行数据比多个INSERT语句快.所以在插入数据时,最好选择使用第三种情况.

7b0a1f0faf3349ce90d874f864026b66.png


注 : 

  • VALUES也可以写成VALUE,但为了规范,还是选择前种.

(3). 方式2

  • INSERT 还可以将SELECT语句查询的结果插入到表中,此时不需要把每一条记录一个一个的输入.只需要一条INSERT语句和一条SELECT语句组成的语句可快速从一个或多个表中向一个表插入多行记录.
  • 在INSERT语句中加入子查询.
  • 不必书写VALUES.
  • 子查询中的值列表应该与INSERT子句的列名对应.

23afbafb26a94b7a829977e04eeff9e6.png

2. 更新数据

  • 使用UPDATE语句更新数据.
  • 使用WHERE指定需要更新数据的条件.并可以一次更新多条数据.
  • 如果需要回滚数据,需要保证在DML操作前,设置SET AUTOCOMMIT=FALSE.不进行自动提交操作.

例1 : 使用WHERE子句指定需要更新记录的条件.如果省略该语句,则表中所有数据将被更新.

fd4d5e9ebf18442bbb6283e34db67373.png

例2 : 使用ROLLBACK回滚.

facf3ac895604fff84dd13639cc3dab1.png

3. 删除数据

  • 使用DELECT FROM删除表的数据.
  • 指定要执行删除操作的表.
  • WHERE子句指定要删除数据的条件.如果没有WHERE子句,如前篇博客,将清空表的所有记录.

75305512b4dd474cba0ac2e7bea53185.png

4. MySQL8新特性 : 计算列

  • 简单来说就是某一列的值是通过别的列计算得来.如a列值为1,b列值为2,x列不用手动输入,定义a+b的结果为c的值,c就是计算列.
  • 在MySQL8中,CREATE TABLE和ALTER TABLE都支持计算列.

例 : 

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

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

相关文章

springboot 整合阿里云短信服务

官方sdk示例地址 依赖引入 <!-- https://mvnrepository.com/artifact/com.aliyun/dysmsapi20170525 --><dependency><groupId>com.aliyun</groupId><artifactId>dysmsapi20170525</artifactId><version>2.0.23</version><…

跟TED演讲学英文:How the US is destroying young people‘s future by Scott Galloway

How the US is destroying young people’s future Link: https://www.ted.com/talks/scott_galloway_how_the_us_is_destroying_young_people_s_future? Speaker: Scott Galloway Date: April 2024 文章目录 How the US is destroying young peoples futureIntroductionVoc…

Java中PriorityQueue的用途和性能深度剖析

哈喽&#xff0c;各位小伙伴们&#xff0c;你们好呀&#xff0c;我是喵手。运营社区&#xff1a;C站/掘金/腾讯云&#xff1b;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点&#xff0c;并以文字的形式跟大家一起交流&#xff0c;互相学习&#xff0c;一…

大势已至,智慧广西 | 大势智慧到往广西自然资源厅下属多家事业单位汇报交流

5月9-10日&#xff0c;武汉大势智慧科技有限公司&#xff08;后简称“大势智慧”&#xff09;CEO黄先锋一行先后到往广西壮族自治区地理信息测绘院&#xff08;后简称“地测院”&#xff09;、广西壮族自治区地图院&#xff08;后简称“地图院”&#xff09;、广西壮族自治区自…

组合模式(结构型)

目录 一、前言 二、透明组合模式 三、安全组合模式 四、总结 一、前言 组合模式(Composite Pattern)是一种结构型设计模式&#xff0c;将对象组合成树形结构以表示“部分-整体”得层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 组合模式由以下角色组成…

Jmeter内存溢出原因及解决办法

现在越来越多的小伙伴在压力测试过程中选择使用Jmeter&#xff0c;原因是这个工具开源且小巧&#xff0c;而且还支持二次开发。 但是事情都有两面性&#xff0c;利弊共存啊&#xff0c;对比商业软件Loadrunner&#xff0c;Jmeter在高并发&#xff0c;特别是大型项目的高并发&a…

将macOS系统安装到外置硬盘上教程

常常因为Mac昂贵的价格&#xff0c;我们会选择低容量的硬盘版本&#xff0c;造成很多大型游戏都安装不了的尴尬境地。今天&#xff0c;我们要探讨一个非常实用的话题&#xff1a;如何给你的Mac电脑扩容&#xff0c;通过将macOS系统安装到外置硬盘上。这对于希望提升存储空间但又…

计算机组成原理(超详解!!) 第七节 中央处理器(下)

1.微程序控制器 微程序设计技术&#xff1a;利用软件方法来设计硬件的一门技术。 微程序控制器的基本思想&#xff1a; 仿照通常的解题程序的方法&#xff0c;把操作控制信号编成所谓的“微指令”&#xff0c;存放到一个只读存储器里。当机器运行时&#xff0c;一条又一条地…

安全测试工具BurpSuite安装和使用

1.安装 下载地址&#xff1a;https://pan.baidu.com/s/1YJbZGAfVKLsQmNeZYZXEeQ 提取码: yyds 打开cmd&#xff0c;运行以下指令&#xff0c;打开keygen界面&#xff1a; java -jar "C:\soft\BurpSuite v2.1\burp-loader-keygen-2.jar" 点击Run按钮&#xff0c;弹…

5月13号作业

使用消息队列实现的2个终端之间的互相聊天 并使用信号控制消息队列的读取方式&#xff1a; 当键盘按ctrlc的时候&#xff0c;切换消息读取方式&#xff0c;一般情况为读取指定编号的消息&#xff0c;按ctrlc之后&#xff0c;指定的编号不读取&#xff0c;读取其他所有编号的消息…

标准输入输出流(中北大学-程序设计基础(2))

目录 题目 源码 结果示例 题目 输入三角形的三边a,b,c&#xff0c;计算三角形的面积。形成三角形的条件是ab>c,bc>a,ac>b&#xff0c;编写程序&#xff0c;输入a,b,c&#xff0c;检查a,b,c是否满足以上条件&#xff0c;如不满足&#xff0c;由cerr输出有关出错信息…

开眼了,自动化测试还能这样用?

持续集成的自动化测试通常需要将代码、测试用例与持续集成工具进行绑定&#xff0c;以实现自动运行。然而&#xff0c;Apipost的自动化测试功能需要手动操作&#xff0c;并且需要手动查看测试结果。 为了解决这个问题&#xff0c;Apipost推出了持续集成功能&#xff0c;方便同…

基于SpringBoot的酒店(预约)客房管理系统的设计与实现+毕业论文

系统介绍 酒店客房管理系统为酒店管理者和用户、清洁人员提供一个在线管理酒店客房的系统。在网站的设计中&#xff0c;一共分为了两个模块设计&#xff0c;一个是前台模块&#xff0c;一个是后台模块&#xff0c;前台主要用于提供查看客房信息&#xff0c;酒店资讯&#xff0…

计算礼品发放的最小分组数目 - 贪心思维

系列文章目录 文章目录 系列文章目录前言一、题目描述二、输入描述三、输出描述四、java代码五、测试用例 前言 本人最近再练习算法&#xff0c;所以会发布自己的解题思路&#xff0c;希望大家多指教 一、题目描述 又到了一年的末尾&#xff0c;项目组让小明负责为使得参加晚…

八、e2studio VS STM32CubeIDE之内存使用情况窗口

目录 一、概述/目的 二、STM32CubeIDE Build Analyzer 三、e2studio Memory Usage 八、e2studio VS STM32CubeIDE之内存使用情况窗口 一、概述/目的 1、嵌入开发最大特点之一就是资源受限&#xff0c;关注芯片资源使用详情是优秀工程师的技能之一 2、Keil和IAR都不支持内存…

网络库-libcurl介绍

1.简介 libcurl 是一个功能强大的库&#xff0c;支持多种协议&#xff0c;用于数据传输。它广泛应用于实现网络操作&#xff0c;如HTTP、HTTPS、FTP、FTPS、SCP、SFTP等。libcurl 提供了丰富的 API&#xff0c;可以在多种编程语言中使用。 libcurl 主要特点 支持多种协议&am…

CCF-Csp算法能力认证,202209-1如此编码(C++)含解析

前言 推荐书目&#xff0c;在这里推荐那一本《算法笔记》&#xff08;胡明&#xff09;&#xff0c;需要PDF的话&#xff0c;链接如下 「链接&#xff1a;https://pan.xunlei.com/s/VNvz4BUFYqnx8kJ4BI4v1ywPA1?pwd6vdq# 提取码&#xff1a;6vdq”复制这段内容后打开手机迅雷…

MySQL学习3

目录 一.合计/统计函数&#xff1a; 1.合计函数--count&#xff1a; 2.合计函数-sum 3.合计函数-avg 4.合计函数--max/min 二.分组统计&#xff1a; &#xff08;1&#xff09;使用group by子句对列进行分组&#xff1a; &#xff08;2&#xff09;使用having子句对分组…

【网络基础】TCP协议2

TCP建立连接 什么是TCP连接 用于保证可靠性和流量控制维护的某些状态信息&#xff0c;这些信息的组合&#xff0c;包括 Socket、序列号和窗口大小称为连接。 Socket&#xff1a;由 IP 地址和端口号组成 序列号&#xff1a;用来解决乱序问题等 窗口大小&#xff1a;用来做流量…

企业邮箱域名是什么?怎么注册一个企业邮箱域名?

企业邮箱域名是什么&#xff1f;企业邮箱域名是企业申请的专属域名&#xff0c;绑定专属的邮箱域名&#xff0c;能够在发送邮件时提高品牌识别性、专业性和宣传效果。那么&#xff0c;我们该怎么注册一个企业邮箱域名呢&#xff1f;本文将为你详细介绍。 一、企业邮箱域名是什…