【MySQL】MySQL对数据的基本操作

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 前两篇博客总结完了MySQL对数据的查询,包括基本查询和高级查询,我们终于结束了查询这一部分了,不过有一说一查询这一部分还是非常非常重要的,有了这部分的基础我们才能继续学习MySQL后面的知识,如果你还没有学习这部分那我建议你先去看一下,再回来继续学习。

前言


前两篇博客总结完了MySQL对数据的查询,包括基本查询和高级查询,我们终于结束了查询这一部分了,不过有一说一查询这一部分还是非常非常重要的,有了这部分的基础我们才能继续学习MySQL后面的知识,如果你还没有学习这部分那我建议你先去看一下,再回来继续学习。


接下来我们正式来学习这部分内容


INSERT语句

在创建数据库完成之后,我们需往数据库中出入数据,在MySQL中可以使用INSERT语句向数据库已有数据库表插入一行或者多行数据。


INSERT语句有两种语法形式,分别是INSERT..VALUES....语句和INSERT...SET...语句,接下来我们就分别来总结一下它们的异同之处。


INSERT LALUES语法格式:


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


如需要向表中所有的列去插入数据,可直接忽略列名,直接采用:


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


INSERT SET语法格式:


INSERT INTO 表名 SET 列名1 = 值1,列名2=值2,列名3=值3...;


这种SQL语句是MySQL里面的方言,也就是只能在MySQL中使用,比较适合单行插入数据


总结一下INSERT语句的特点:


使用 INSERT…VALUES 语句可以向表中插入一行数据,也可以插入多行数据;

使用 INSERT…SET语句可以指定插入行中每列的值,也可以指定部分列的值;

INSERT…SELECT 语句向表中插入其他表的数据;

采用 INSERT…SET 语句可以向表中插入部分列的值,这种方式更为灵活;

INSERT…VALUES 语句可以一次插入多条数据;

用单条INSERT语句处理多个插入要比使用多条INSERT语句更快;

当使用单条INSERT语句插入插入多行时,只需要将每行数据用园括号括起来即可;

示例:

create  table student(
   id    INT PRIMARY KEY NOT NULL,
   name  VARCHAR(4) NOT NULL,
   age   INT NOT NULL,
   sex   CHAR(1) NOT NULL,
   class VARCHAR(10) ,
   birthplace  varchar(10),
   id_teach INT UNSIGNED NOT NULL
);
INSERT student VALUE
('88201','张三',18,'男','软件211','浙江杭州',689),
('88202','李四',19,'男','软件212','河南郑州',898),
('88203','小红',18,'女','计算机211','北京',758),
('88204','王五',16,'男','软件214','浙江杭州',589);


输出:

image.png

image.png


UPDATE语句

UPDATE的功能是更新表中的数据。这的语法和INSERT的第二种用法相似。必须提供表名以及SET表达式,在后面可以加WHERE语句以限制更新的记录范围。


语法格式:


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


示例:张三变性成为了女性


UPDATE student SET sex="女" WHERE name="张三";


输出:

image.png


如果不加上WHERE子句来限制条件UPDATE将更新表中的所有记录的值,如:


UPDATE student SET sex="女" ;


输出:

image.png

也就是说这个SQL 语句根据WHERE语句来选择是哪几行数据需要更新,然后根据SET语句来选择有哪几个字段需要修改。


DELETE语句

MySQL 中,可以使用 DELETE 语句来删除表的一行或者多行数据。


语法格式:

DELETE FROM 表名 WHERE 条件


示例:张三被退学了

DELETE FROM student WHERE name="张三";


输出:


image.png

注意:在不使用WHERE子句条件时,将会删除所有数据。如下:

DELETE FROM student ;


输出:


image.png


这里要注意删除的是表中的数据而不是表,与之前的DROP语句是不一样的,这里的表还是存在的,只不过是空表而已。


结语

用于操作数据库的SQL一般分为两种,一种是查询语句,也就是我们所说的SELECT语句,另外一种就是更新语句,也叫做数据操作语句,就是我们今天学习的INSERT、UPDATE和DELETE语句。


所以到目前为止,SQL语言我们已经差不多都学完了,剩下来的就是多多的去练习掌握了,坚持与努力!


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
SQL DataWorks 关系型数据库
DataWorks操作报错合集之如何处理数据同步时(mysql->hive)报:Render instance failed
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
20天前
|
canal 消息中间件 关系型数据库
Canal作为一款高效、可靠的数据同步工具,凭借其基于MySQL binlog的增量同步机制,在数据同步领域展现了强大的应用价值
【9月更文挑战第1天】Canal作为一款高效、可靠的数据同步工具,凭借其基于MySQL binlog的增量同步机制,在数据同步领域展现了强大的应用价值
116 4
|
28天前
|
关系型数据库 MySQL 数据库
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
|
4天前
|
存储 关系型数据库 MySQL
技术解析:MySQL中取最新一条重复数据的方法
以上提供的两种方法都可以有效地从MySQL数据库中提取每个类别最新的重复数据。选择哪种方法取决于具体的使用场景和MySQL版本。子查询加分组的方法兼容性更好,适用于所有版本的MySQL;而窗口函数方法代码更简洁,执行效率可能更高,但需要MySQL 8.0及以上版本。在实际应用中,应根据数据量大小、查询性能需求以及MySQL版本等因素综合考虑,选择最合适的实现方案。
26 6
|
4天前
|
关系型数据库 MySQL 数据处理
针对MySQL亿级数据的高效插入策略与性能优化技巧
在处理MySQL亿级数据的高效插入和性能优化时,以上提到的策略和技巧可以显著提升数据处理速度,减少系统负担,并保持数据的稳定性和一致性。正确实施这些策略需要深入理解MySQL的工作原理和业务需求,以便做出最适合的配置调整。
29 6
|
23天前
|
SQL 存储 缓存
MySQL是如何保证数据不丢失的?
文章详细阐述了InnoDB存储引擎中Buffer Pool与DML操作的关系。在执行插入、更新或删除操作时,InnoDB为了减少磁盘I/O,会在Buffer Pool中缓存数据页进行操作,随后将更新后的“脏页”刷新至磁盘。为防止服务宕机导致数据丢失,InnoDB采用了日志先行(WAL)机制,通过将DML操作记录为Redo Log并异步刷新到磁盘,结合双写机制和合理的日志刷新策略,确保数据的持久性和一致性。尽管如此,仍需合理配置参数以平衡性能与数据安全性。
MySQL是如何保证数据不丢失的?
|
1月前
|
分布式计算 DataWorks 关系型数据库
DataWorks产品使用合集之ODPS数据怎么Merge到MySQL数据库
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
1月前
|
DataWorks 关系型数据库 MySQL
DataWorks产品使用合集之mysql节点如何插入数据
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
1月前
|
关系型数据库 MySQL 数据库
MySQL 复制A的表结构和数据到表B
在MySQL中复制表A至表B可通过不同方法实现。一种是先用`CREATE TABLE B LIKE A;`复制结构,再用`INSERT INTO B SELECT * FROM A;`填充数据。另一种更简便的方法是直接使用`CREATE TABLE B AS SELECT * FROM A;`一次性完成结构和数据的复制。还有一种高级方法是通过`SHOW CREATE TABLE A;`获取表A的创建语句,手动调整后创建表B,如有需要再用`INSERT INTO ... SELECT`复制数据。注意权限问题、跨数据库复制时需指定数据库名,以及大表复制时可能影响性能。
|
1月前
|
消息中间件 数据采集 关系型数据库
大数据-业务数据采集-FlinkCDC 读取 MySQL 数据存入 Kafka
大数据-业务数据采集-FlinkCDC 读取 MySQL 数据存入 Kafka
39 1

热门文章

最新文章