MySQL 之 DML 应用实战|学习笔记

简介: 快速学习 MySQL 之 DML 应用实战

开发者学堂课程【MySQL 实操课程 MySQL 之 DML 应用实战】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/717/detail/12805


MySQL 之 DML 应用实战

 

目录

一、DML 介绍

二、插入记录

三、更新、删除记录

四、查询指定列、查询不重复记录

 

一、DML介绍

DML 定义

DML(Data Manipulation Language): 数据操作语句,用于添加、删除、更新和查询数据库记录,并检查数据完整性。常用的关键字主要包括 insert、delete、update 和 select 等。

 

二、插入记录

示例:插入记录

1.查看 emp 表

输入 SELECT * from EMP; 下图可以看见 emp 表里面没有任何数据库。

图片58.png

2.插入记录

输入 INSERT into emp(ename,hiredate,sal,deptno) VALUE('zhangsan','2015-08-01','2000',1)

INSERT into emp(ename,hiredate,sal,deptno) VALUE(lisi','2017-09-21','3000',1)

显示执行成功

图片59.png

3.查看 emp 表是否成功插入记录

输入 SELECT * from EMP;可以看见已经插入成功

4.创建 dept 表

输入 CREATE TABLE dept(deptno int(3),deptname varchar(20));

5.在 dept 表中插入数据库

输入 insert INTO dept VALUES(1,'tech'),(2,'sal'),(3,'fin');

显示执行成功

图片60.png 

当前有两个数据表

一个是 emp 表,一个是 dept 表

图片61.png

6.查看 dept 表

输入 SELECT * from dept;输入 insert INTO dept VALUES(1,'tech'),(2,'sal'),(3,'fin'); 已经执行成功。

7.查看 emp 表

输入 SELECT * from emp;

图片62.png

 

三、更新、删除记录

1.更新记录

示例:将 lisi 的 sal 更新为4000

输入 select * from emp;可以看见 lisi 当前的 sal 为3000

图片63.png

输入 UPDATE emp set sal=4000 where ename='lisi'; 显示执行成功

验证 emp 表是否执行成功

输入 select * from emp;显示‘lisi’的sal更新为4000执行成功

2.删除记录

示例:将 lisi 删除

输入 DELETE FROM emp where ename='lisi'; 显示执行成功

验证 emp 表是否执行成功

输入 select * from emp;显示‘lisi’已经被删除

图片64.png

3.删除记录的另一种方式:利用 truncate

truncate table emp 是删除整个表里面的数据,一次性清除

输入 truncate table emp;显示执行成功

验证 emp 表是否执行成功

输入 select * from emp;emp 表里面已经没有任何数据(全部清除)。

图片65.png

4.truncate 与 delete 的差异

(1)delete 对于表的删除:如果表含有自增的列,那么在 delete 的过程中,插入的数据,表的自增列不会重零继续开始,而是接着原来删除的记录开始。

示例:增加列

①输入 ALTER table emp add COLUMN id int(3) auto_increment;

显示错误:需要指定组件,因为是自增列

图片66.png

②添加组件

输入 ALTER table emp add COLUMN id int(3) auto_increment primary key; 显示语法错误

图片67.png

③重新输入

alter table emp add id int auto_increment primary keyfirst; 点击执行

④查看 desc 表

输入 desc emp;可以看见 auto_increment 已经成功执行了。

⑤查询 emp 表

输入 select * from emp;可以看见没有任何数据

图片68.png

⑥插入 zhangsan 数据

输入 insert into emp(ename,hiredate,sal,deptno) VALUES('zhangsan','2007-08-01',2000,1); 执行成功

图片69.png

查询 emp 表

输入 select * from emp;插入数据成功

图片70.png

⑦插入 lisi 数据

输入insert into emp(ename,hiredate,sal,deptno) VALUES('lisi','2017-08-25',3000,1); 执行成功

图片71.png

查询 emp 表

输入 select * from emp;插入数据成功

图片72.png

可以看见 ID 会自增。

示例:删除之后在插入数据

输入 delete from emp;

图片73.png

输入 select * from emp;可以看见 emp 表里面的数据为空。

图片74.png

直接插入 insert into emp(ename,hiredate,sal,deptno) VALUES('zhangsan','2007-08-01',2000,1);

图片75.png

输入 select * from emp;ID 是从3开始的,即使把前面两条数据删除了,ID 依然是从原来删除的 ID 自增的。

图片76.png

执行 truncate table emp;把数据删除

图片77.png 

查询:输入 select * from emp;是没有数据的

图片78.png

插入 insert into emp(ename,hiredate,sal,deptno) VALUES('zhangsan','2007-08-01',2000,1);

图片79.png 

查询:输入 select * from emp;ID 是从1开始

图片80.png 

(2)delete 对于数据的删除,如果是放在事物里面,它是可以支持回滚,但是truncate 不支持数据的回滚。

 

四、查询指定列、查询不重复记录

1.查询指定列

(1)插入 'lisi、wangwu

插入insert into emp(ename,hiredate,sal,deptno) VALUES('lisi','2017-08-25',3000,1);

再插入 insert into emp(ename,hiredate,sal,deptno) VALUES('wangwu','2019-11-18',8000,2);

图片81.png 

查询 emp 表

输入 select * from emp;有三条数据

图片82.png 

(2)不显示 ID

输入 select ename,hiredate,sal,deptno from emp; 已经不显示 ID 了

图片83.png 

2.查询涉及到的部门

输入 select DISTINCT deptno from emp; 只显示两个部门。

图片84.png

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
5月前
|
关系型数据库 MySQL 分布式数据库
安全可靠的PolarDB V2.0 (兼容MySQL)产品能力及应用场景
PolarDB分布式轻量版采用软件输出方式,能够部署在您的自主环境中。PolarDB分布式轻量版保留并承载了云原生数据库PolarDB分布式版技术团队深厚的内核优化成果,在保持高性能的同时,显著降低成本。
619 140
|
3月前
|
SQL 监控 关系型数据库
MySQL事务处理:ACID特性与实战应用
本文深入解析了MySQL事务处理机制及ACID特性,通过银行转账、批量操作等实际案例展示了事务的应用技巧,并提供了性能优化方案。内容涵盖事务操作、一致性保障、并发控制、持久性机制、分布式事务及最佳实践,助力开发者构建高可靠数据库系统。
|
7月前
|
负载均衡 算法 关系型数据库
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
本文聚焦 MySQL 集群架构中的负载均衡算法,阐述其重要性。详细介绍轮询、加权轮询、最少连接、加权最少连接、随机、源地址哈希等常用算法,分析各自优缺点及适用场景。并提供 Java 语言代码实现示例,助力直观理解。文章结构清晰,语言通俗易懂,对理解和应用负载均衡算法具有实用价值和参考价值。
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
|
7月前
|
SQL 关系型数据库 MySQL
菜鸟之路Day30一一MySQL之DML&DQL
本文介绍了MySQL中DML(数据操作语言)和DQL(数据查询语言)的核心用法。DML主要包括插入(insert)、更新(update)和删除(delete)语句,通过具体示例演示了如何对表数据进行增删改操作。DQL则聚焦于数据查询,涵盖基本查询、条件查询、聚合函数、分组查询、排序查询和分页查询等内容。文章通过丰富的SQL语句实例,帮助读者掌握如何高效查询和操作数据库中的数据,适合初学者学习和实践。
259 12
|
4月前
|
存储 关系型数据库 MySQL
MYSQL数据加密压缩函数应用实战指南。
总的来说,加密和压缩是维护MySQL数据库中数据安全性和效率的有效手段。使用时需权衡性能与安全,合理应用加密和压缩函数。在设计数据库架构时要考虑到加密字段的查询性能,因为加密可能使得一些索引失效。压缩数据能有效减少存储空间的占用,但在服务器负载较高时应避免实时压缩和解压,以免影响总体性能。
178 10
|
11月前
|
存储 关系型数据库 MySQL
MySQL索引学习笔记
本文深入探讨了MySQL数据库中慢查询分析的关键概念和技术手段。
735 81
|
11月前
|
SQL 存储 关系型数据库
MySQL秘籍之索引与查询优化实战指南
最左前缀原则。不冗余原则。最大选择性原则。所谓前缀索引,说白了就是对文本的前几个字符建立索引(具体是几个字符在建立索引时去指定),比如以产品名称的前 10 位来建索引,这样建立起来的索引更小,查询效率更快!
391 22
 MySQL秘籍之索引与查询优化实战指南
|
安全 关系型数据库 MySQL
PHP与MySQL动态网站开发实战指南####
——深入探索LAMP栈下的高效数据交互与处理技巧 ####
|
关系型数据库 MySQL PHP
PHP与MySQL动态网站开发实战指南####
深入探索PHP与MySQL的协同工作机制,本文旨在通过一系列实战案例,揭示构建高效、稳定且用户友好的动态网站的秘诀。从环境搭建到数据交互,再到最佳实践分享,本文为开发者提供了一条清晰的学习路径,助力其在LAMP(Linux, Apache, MySQL, PHP/Perl/Python)栈上实现技术飞跃。 ####
|
3月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
165 3

推荐镜像

更多