MySQL
文章平均质量分 84
MySQL数据库技术与应用的学习
梁辰兴
深情不及久伴,紘爱无需多言。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MySQL 导出和导入数据
这将导出"mydatabase"数据库中名为"users"的表格的所有数据,并将其保存到指定路径的.sql文件中。它允许您将查询结果保存到指定的文件路径中,以便进行后续处理或备份。这将导出"users"表中的所有数据,并将其保存到指定路径的CSV文件中。MySQL导出数据的主要作用是将数据库中的数据以某种格式(如CSV、SQL等)导出到一个文件中,以便在需要时进行导入或备份。这个语句将指定表格中的所有数据导出到一个CSV文件中。是MySQL提供的一个命令行工具,用于导入数据到MySQL数据库中。原创 2023-09-15 08:26:40 · 14629 阅读 · 0 评论 -
MySQL 重复数据的处理
SQL注入是一种常见的网络安全漏洞,它涉及到应用程序中对用户输入的数据进行未经验证和过滤的处理,从而使攻击者能够在应用程序的数据库中执行恶意SQL代码。攻击者通过向应用程序提交精心构造的SQL语句,使得应用程序的数据库服务器执行这些恶意语句,从而获取敏感信息、篡改数据、或者完全控制数据库服务器。原创 2023-09-15 08:07:27 · 2604 阅读 · 1 评论 -
MySQL 插入、更新与删除表中数据
文章目录↠前言↞↻ . 准备工作1)使用数据库2)创建数据表3)查看数据表是否存在4)查看数据表信息 (两种方法)㊀ . 插入数据第一种添加方法第二种添加方法第三种添加方法第四种添加方法㊁ . 更新数据➀ . 更新一条记录中的一个字段➁ . 更新几条记录中的相同字段➂ . 更新整个数据表数据的某个信息㊂ . 删除数据Ⅰ. 删除其中一条数据Ⅱ . 删除其中的几条数据Ⅲ . 表中的记录全部删除㊃ . 知识拓展:使用关键字TRUNCATE删除表中数据准备工作TRUNCATE与DELETE的区别↠前言↞这篇原创 2022-04-07 11:49:46 · 1233 阅读 · 0 评论 -
MySQL 子查询
文章目录一,子查询定义二、子查询分类三、字查询例举1. ANY进行子查询2. 使用IN进行子查询3. 使用SOME进行子查询4. 使用ALL进行子查询5. 标量子查询6. 多值子查询7. 独立子查询sql语句1:获得所有hangzhou顾客的订单号。sql语句2:获得城市为hangzhou,并且存在订单的用户。8. 相关子查询9. EXISTS谓词10. 派生表四、子查询优化使用连接(JOIN)来代替子查询例子1:优化前:优化后:例子2:优化前:优化后:注:不能优化的子查询一,子查询定义1.定义原创 2022-04-14 08:38:52 · 10121 阅读 · 1 评论 -
MySQL 查询、子查询及连接查询
文章目录一、mysql查询的五种子句1、where常用运算符:2、group by 分组(1)max:求最大值(2)min:求最小值(3)sum:求总数和(4)avg:求平均值(5)count:求总行数3、having 与where 的异同点4、order by5、limit二、mysql子查询1、where型子查询2、from型子查询3、exists型子查询三、union的用法四、左连接,右连接,内连接1、左连接2、右连接3、内连接总结:可以对同一张表连接多次,以分别取多次数据一、mysql查询的五种原创 2022-04-14 09:06:17 · 856 阅读 · 0 评论 -
MySQL 视图(详解)
文章目录一,视图概念使用视图的原因二,创建视图(1)基本语法(2)创建基于单表的视图【实例 1】【实例 2】(3)创建基于多表的视图【实例 3】(4)查询视图【实例 4】三,查看视图1、查询表(包括view)2、查询视图四,修改视图(1)基本语法(2)修改视图内容【实例 1】【实例 2】(3)修改视图名称五,删除视图(1)基本语法(2)删除视图【实例】六,通过视图更新基本表数据(1)INSERT语句通过视图添加数据基本格式【实例1】(2)DELETE语句通过视图删除数据基本格式【实例2】(3)UPDATE语原创 2022-04-21 10:16:40 · 52306 阅读 · 7 评论 -
MySQL 索引(简解)
文章目录一,索引简介① 索引概念② 使用索引的原因优点缺点③ 索引的分类(逻辑)二,创建索引① 自动创建索引② 手动创建索引③ 在创建表时创建索引1,创建普通索引2,创建唯一索引3,创建主键索引4,创建全文索引5,创建空间索引6,创建复合索引④ 为已存在的表创建索引➀ 使用create index 创建索引➁ 使用alter table 创建索引三,删除索引① 使用alter table删除语句索引② 使用drop table删除语句索引一,索引简介① 索引概念MySQL官方对索引的定义为:索引(i原创 2022-05-02 18:03:44 · 1845 阅读 · 0 评论 -
为什么要学MySQL数据库,它有什么用?
3)通过将数据水平拆分,使用多台廉价的 PC Server 和本地磁盘来存放数据,每台机器上面都只有所有数据的一部分,解决了数据量的问题,所有 PC Server 一起并行计算,也解决了计算能力问题,通过中间代理程序调配各台机器的运算任务,既可以解决计算性能问题又可以解决 I/O 性能问题,成本也很低廉。MySQL 数据库的插入和查询性能都非常的高效,如果设计的好,在使用 MyISAM 存储引擎的时候,两者可以做到互不锁定,达到很高的并发性能。比如处理用户的登录日志,操作日志等,都是非常适合的应用场景。原创 2022-11-05 09:10:32 · 14041 阅读 · 0 评论 -
MySQL函数大全 MySQL常用函数汇总
MySQL 函数会对传递进来的参数进行处理,并返回一个处理结果,也就是返回一个值。MySQL 包含了大量并且丰富的函数,这套 MySQL 函数大全只收集了几十个常用的,剩下的比较罕见的函数我就不再整理了,有需要的读者可以到「MySQL 官网」查询。可以对 MySQL 常用函数进行简单的分类,大概包括数值型函数、字符串型函数、日期时间函数、聚合函数等。原创 2022-10-19 10:46:09 · 1437 阅读 · 0 评论 -
MySQL数据库的五个基本操作:查看、创建、修改、删除和选择数据库
对数据库进行查询和修改操作的语言叫做 SQL(Structured Query Language,结构化查询语言)。SQL 语言是目前广泛使用的关系数据库标准语言,是各种数据库交互方式的基础。数据库可以看作是一个专门存储数据对象的容器,每一个数据库都有唯一的名称,并且数据库的名称都是有实际意义的,这样就可以清晰的看出每个数据库用来存放什么数据。在 MySQL 数据库中存在系统数据库和自定义数据库,系统数据库是在安装 MySQL 后系统自带的数据库,自定义数据库是由用户定义创建的数据库。在 MySQL 中,可原创 2022-10-19 11:15:54 · 1897 阅读 · 0 评论 -
MySQL 数据表的基本操作(详解)
修改数据表的前提是数据库中已经存在该表。数据表属于数据库,在创建数据表之前,应使用语句“USE”指定操作在哪个数据库中进行,如果没有选择数据库,就会抛出 No database selected 的错误。提示:修改表名并不修改表的结构,因此修改名称后的表和修改名称前的表的结构是相同的。在删除表的同时,表的结构和表中所有的数据都会被删除,因此在删除数据表之前最好先备份,以免造成无法挽回的损失。选择创建表的数据库 test_db,创建 tb_emp1 数据表,输入的 SQL 语句和运行结果如下所示。原创 2022-10-20 18:21:34 · 5191 阅读 · 0 评论 -
MySQL 字段的基本操作:添加、修改和删除字段(详解)
随着业务的变化,可能需要在已有的表中添加新的字段。CHANGE 也可以只修改数据类型,实现和 MODIFY 同样的效果,方法是将 SQL 语句中的“新字段名”和“旧字段名”设置为相同的名称,只改变“数据类型”。提示:由于不同类型的数据在机器中的存储方式及长度并不相同,修改数据类型可能会影响数据表中已有的数据记录,因此,当数据表中已经有数据时,不要轻易修改数据类型。由运行结果可以看到,student 表中已经添加了 stuId 字段,且该字段在 name 字段后面的位置,添加字段成功。原创 2022-11-05 09:51:47 · 5144 阅读 · 0 评论 -
MySQL 数据的基本操作:插入、修改、删除和清空数据(详解)
当不需要该表时,用 DROP;当仍要保留该表,但要删除所有记录时,用 TRUNCATE;当要删除部分记录时,用 DELETE。原创 2022-11-05 09:50:40 · 3480 阅读 · 0 评论 -
MySQL 连接的基本操作:交叉、内和外连接
可以看到,结果显示了 11 条记录,名称为 HTML 的课程目前没有学生,因为对应的 tb_students_info 表中并没有该学生的信息,所以该条记录只取出了 tb_course 表中相应的值,而从 tb_students_info 表中取出的值为 NULL。当连接的表之间没有关系时,我们会省略掉 WHERE 子句,这时返回结果就是两个表的笛卡尔积,返回结果数量就是两个表的数据行相乘。前面所说的查询语句都是针对一个表的,但是在关系型数据库中,表与表之间是有联系的,所以在实际应用中,经常使用多表查询。原创 2022-10-22 21:07:18 · 759 阅读 · 0 评论 -
MySQL 正则表达式查询
匹配方式”中有很多的模式匹配字符,它们分别表示不同的意思。在 tb_students_info 表中,查询 name 字段值包含“a”和“y”,且两个字母之间只有一个字母的记录,SQL 语句和执行过程如下。在 tb_students_info 表中,查询 name 字段值包含字母“T”,且“T”后面至少出现“h”一次的记录,SQL 语句和执行过程如下。在 tb_students_info 表中,查询 name 字段值包含字母“T”,且“T”后面出现字母“h”的记录,SQL 语句和执行过程如下。原创 2022-12-09 10:03:35 · 9041 阅读 · 0 评论 -
MySQL 管理
在添加用户时,请注意使用MySQL提供的 PASSWORD() 函数来对密码进行加密。另外一种添加用户的方法为通过SQL的 GRANT 命令,你下命令会给指定数据库TUTORIALS添加用户 zara ,密码为 zara123。如果你需要添加 MySQL 用户,你只需要在 mysql 数据库中的 user 表添加新用户即可。如果你不使用该命令,你就无法使用新创建的用户来连接mysql服务器,除非你重启mysql服务器。在配置文件中,你可以指定不同的错误日志文件存放的目录,一般你不需要改动这些配置。原创 2022-12-25 20:03:31 · 423 阅读 · 0 评论 -
MySQL 数值函数
数值函数用来处理数值方面的运算,能够提高用户的工作效率。常用的数值函数如下表所示,函数括号内为输入的参数。注意:如果 num 中的小数位数小于 n,缺少的位数用 0 补上。注意:如果 num 中的小数位数小于 n,缺少的位数用 0 补上。返回 num 的四舍五入的 n 位小数的值。返回数字 num 截断为 n 位小数的结果。返回大于 num 的最小整数值。返回小于 num 的最大整数值。返回 0 到 1 内的随机值。返回 num 的绝对值。返回 num 的平方根。原创 2023-05-30 10:42:47 · 1566 阅读 · 0 评论 -
MySQL 日期时间函数
日期操作是 MySQL 中的常用操作,掌握常用的日期时间函数并熟练组合运用,能够帮助我们解决查询中的许多难题。常用的数值函数如下表所示,函数括号内为输入的参数。结果解析:如果 date1 日期比 date2 日期小,输出为负值。下面使用 SQL 语句对上述日期时间函数进行演示。返回 date1 与 date2 间隔的天数。返回 date 日期添加 n 天后的新日期。返回 date 日期中的年份、月份、日。返回 date 日期是一年中的第几周。原创 2023-05-30 10:44:04 · 1140 阅读 · 0 评论 -
MySQL 对日期使用 DATE_FORMAT()函数
前面使用日期时间函数,获取到的要么是 yyyy-mm-dd 形式的日期,要么是 hh:MM:ss 形式的时间,或者是 yyyy-mm-dd hh:mm:ss 形式的日期及时间,其输出格式都已经确定。但在日常生活中,而每次提及日期时间信息都有不同的关注侧面,如:我只想知道今天是几号,或者是星期几,或者时间是几点几分。该函数的输出形式非常灵活,可以根据需要进行任意输出格式的搭配,这里就不一一进行举例说明了。DATE_FORMAT ,日期格式化,顾名思义,可以将日期格式化为各种各样的形式。,输出结果为 Wed。原创 2023-05-30 10:46:23 · 6149 阅读 · 0 评论 -
MySQL 对字符串使用 STR_TO_DATE() 函数
前面(《MySQL 对日期使用 DATE_FORMAT()函数》)我们利用 date_formate() 函数,按照自己希望的格式来输出日期时间。我们从用户界面接收到的信息都是以字符串的形式在进行传递,如何把字符串转换为日期类型进行存储呢?str_to_date() 函数的用法和 date_format() 基本一致,只是输出数据的类型不同,前提都需要熟悉输出格式,参照上表。结果解析:20231501 转换为日期后得到的月份是 15,超出有效范围,故结果返回 null。原创 2023-05-30 10:47:24 · 6642 阅读 · 0 评论 -
MySQL CAST 函数与 CONVERT 函数
接下来笔者给大家介绍的 cast() 函数和 convert() 函数可实现数据在不同类型之间进行转换。注意:在转换为整型的时候,如果遇到无法识别的字符则停止转换,只返回能正常识别的部分。结果解析:decimal(m,n) ,其中 m>n,表示总共 m 位数据,其中小数 n 位,整数 m-n 位。注意:使用convert()函数则是:convert(‘3.12’,signed),得到的结果相同。其他类型之间的转换,读者朋友们可以在自己的 MySQL 数据库中去尝试,就不一一举例了。原创 2023-05-30 10:48:26 · 2850 阅读 · 1 评论 -
MySQL 条件判断函数
如果 expr 等于其中一个 value 的值,则返回对应 then 后的结果,如果都不等,则返回 else 后面的 default。该函数先判断 value1,如果 value1 不为 null,该函数返回 value1,否则返回 value2。其中 expr 是条件判断表达式,如果 expr 为真返回 value1,否则返回 value2。原创 2023-05-30 10:47:54 · 1259 阅读 · 0 评论 -
MySQL 系统信息函数
当我们需要知道当前 MySQL 数据库的一些基本信息和使用情况的时候,可以使用系统信息函数来获取相关信息,以随时掌握数据库的使用情况。结果解析:如果之前没有使用语句 use 数据库名;来确定数据库的使用,那么返回的结果为 null。其他函数的使用,大家可以自己去尝试。原创 2023-05-30 10:48:40 · 1660 阅读 · 0 评论 -
MySQL 加密函数
MD5 是一种被广泛使用的加密方法,它是一个密码散列函数,可以产生一个 128 位的散列值,这些值按一定规则进行排序。当你的保护对象发生变化后,其 MD5 的值也会不一样,所以 MD5 经常用来验证数据有没有被篡改。sha 和 MD5 一样,也是一个密码散列函数,是 FIFS 认证的安全散列算法,比 MD5 更安全。原创 2023-05-30 10:49:43 · 455 阅读 · 0 评论 -
MySQL 格式化函数
我们经常会要求按照某种格式输出数据,以方便我们阅读、快速掌握数据信息。前面学习的日期时间函数其实就是一种格式化函数,通过函数把日期转化为我们需要的格式。注意:其中 value 是被格式化的数据,n 表示保留的小数位数。结果解析:可以看到该函数具有四舍五入的功能。接下来给大家介绍的格式化函数是。原创 2023-05-30 10:52:16 · 508 阅读 · 0 评论 -
MySQL 多行函数
结果解析:求平均值一般会出现小数位,但像人口数这样的数据出现小数位就显得不合适。我们可以结合上一章的求四舍五入的单行函数,把小数点给去掉。多行函数,即组函数,也叫聚合函数,它们的作用是对一组(至少 2 条)记录进行统计计算,并得到统计结果。开始下面实验时,请同学们自行导入上一次实验所下载的 world.sql,并切换数据库。注意:world 示例数据库中的数据仅供 MySQL 操作练习使用,不确保数据真实性。注意:在 round 函数中设置保留 0 位小数,所以结果只有整数部分。原创 2023-05-30 10:52:05 · 1469 阅读 · 0 评论 -
MySQL 分组统计
关于多行函数,上面所举例子均是直接对整个表进行数据统计。已知在 city 这个表中,有 4079 条记录,在这些记录中,有多个城市属于同一个国家。如果想统计 city 表中各个国家的人口总数该怎么办?分析:countrycode 码相同的城市即属于同一个国家,我们以国家为单位进行分组进行人数统计。结果解析:每个国家都会有一个统计结果,总共有 232 个国家。原创 2023-06-04 19:03:38 · 523 阅读 · 0 评论 -
MySQL 连接查询
使用该语法,解析引擎会自动探测两个表中相同的字段并设定等值条件,这样的字段可以不止一个,有多少个这样的字段就会生成多少个等值条件。自然连接需要 MySQL 判定表中相同的字段,在有多个相同字段时,如果想指定以某个字段进行等值连接,需要使用 join……左外连接简称左连接,是指在两个表进行连接时,返回左表的全部记录及右表中符合条件的记录,右表没有匹配的记录用 null 补全。右外连接简称右连接,右连接刚好和左连接相反,返回右表的全部记录及左表中符合条件的记录,左表没有匹配的记录用 null 补全。原创 2023-06-04 19:03:23 · 2357 阅读 · 0 评论 -
MySQL 子查询
相关子查询执行过程:先在外层查询中取第一行记录,用该记录的相关的属性值(在内层 where 子句中给定的)处理内层查询,若外层的 where 子句返回True值,则这条记录放入结果表中。不相关子查询:子查询的查询条件不依赖于父查询的称为不相关子查询。相关子查询:子查询的查询条件依赖于外层父查询的某个属性值的称为相关子查询,带 EXISTS 的子查询就是相关子查询。所谓子查询就是 select 查询语句中还有 select 查询语句,里面的称为子查询或内查询,外面的称为主查询或外查询。原创 2023-06-04 19:05:27 · 1197 阅读 · 0 评论 -
MySQL 数据操纵语言 DML
因为 SELECT 查询语句属于数据查询语言 DQL,不属于数据操纵语言 DML,只是在日常工作中,多数研发人员、数据库管理员都习惯性的将 SELECT 语句归入数据操纵语言中,这一点大家需要弄清楚。第一种形式无需指定要插入数据的列名,只需提供被插入的值即可。其中 table 表示的是表名,column1、column2 表示的是要修改的字段名,value1、value2 表示的是修改后的值。值得注意的是,在使用 UPDATE 语句时,通常需要使用 WHERE 子句进行条件限制,用来指定被修改的行。原创 2023-06-04 19:06:52 · 1061 阅读 · 0 评论 -
MySQL 事务处理语言 TCL
事务(Transaction)是数据库操作的最小工作单元,是作为单个逻辑执行的一系列操作(比如上述中的输入取款金额,得到现金,取回磁卡等操作)的集合;这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行。事务是不可再分割的。原子性(Atomicity):事务是数据库的逻辑工作单位,事务中包含的各操作要么都做,要么都不做。一致性(Consistency):事务执行的前后数据都处于合法状态,不会违背任何的数据完整性和逻辑的正确性,这就是“一致”的意思。原创 2023-06-04 19:06:54 · 800 阅读 · 0 评论 -
MySQL 数据定义语言 DDL
前面我们学习的 DML 语言,主要实现对数据的增、删、改等基本操作。而数据定义语言(Data Definition Language,DDL)则是实现对数据结构、操作等的定义。例如,对数据库、数据表、索引等的设计、创建、修改、删除等操作,都属于 DDL 范围。接下来,就让我们一起进入 DDL 的学习之旅。原创 2023-06-04 19:07:13 · 1049 阅读 · 0 评论 -
MySQL 约束控制
我们把讲 3NF 的时候的专业信息表创建出来,并用列级约束的形式设置专业字段为非空。数据的完整性约束(简称“约束”)是在表和字段上强制执行的数据检测规则,是为了防止不规范的数据进入数据库。需要注意,主表在插入记录的时候,外键的值必须能在关联表的关联列中找到,否则插入信息失败。创建外键约束使用的语句是 FOREIGN KEY,其作用为限制两个表的关系,保证表中该字段的值来自于关联表。在 MySQL 中支持的约束有 6 种,分别是:非空约束、主键约束、默认值约束、唯一约束、外键约束和自定义检查约束。原创 2023-06-04 19:06:39 · 952 阅读 · 0 评论 -
MySQL JDBC详解
JDBC 的顶层是开发人员自己编写的 Java 应用程序,如下图所示。Java 应用程序可以通过集成在 JDK 中的 java.sql 及 javax.sql 包中的 JDBC API 来访问数据库。下面讲解上图中出现的一些 JDBC 重要组件,思维导图如下。JDBC API 包含了 Java 应用程序与各种不同数据库交互的标准接口,如Connection连接接口、Statement操作接口、ResultSet结果集接口、预处理操作接口等,使用这些JDBC接口可以操作各种关系型数据库;原创 2023-06-06 09:55:14 · 1907 阅读 · 0 评论
分享