
MySQL
文章平均质量分 92
个人对于 MySQL 知识内容上的理解总结
ChinaRainbowSea
一个人的资金一定是与他(她)的能力相匹配的,无一例外。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
6-2 MySQL 数据结构选择的合理性
MySQL数据结构选择的合理性主要基于磁盘IO效率的优化。文章分析了多种索引结构的优缺点: 哈希索引虽然查询效率高(O(1)),但不支持范围查询和排序,仅Memory引擎支持 二叉搜索树和AVL树存在高度过高导致磁盘IO次数多的问题 B-Tree作为多路平衡查找树,通过增加分支数降低树高度,显著减少IO次数 B-Tree特性包括:根节点2-M个子节点、中间节点k-1个关键字和k个指针、所有叶子节点同层 最终选择B-Tree结构的原因是它能有效平衡查询效率与IO消耗,通过"矮胖"的树形结构原创 2025-06-03 10:49:14 · 757 阅读 · 0 评论 -
7. MySQL 当中的 InnoDB 数据存储结构(详解)
在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。原创 2025-04-09 14:28:56 · 835 阅读 · 0 评论 -
6. MySQL 索引的数据结构(详细说明)
MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。索引的本质:索引是数据结构。你可以简单理解为“排好序的快速查找数据结构”,满足特定查找算法。这些数据结构以某种方式指向数据, 这样就可以在这些数据结构的基础上实现高级查找算法。索引是在存储引擎中实现的,因此每种存储引擎的索引不一定完全相同,并且每种存储引擎不一定支持所有索引类型。同时,存储引擎可以定义每个表的最大索引数和最大索引长度。所有存储引擎支持每个表至少16个索引,总索引长度至少为256字节。原创 2025-03-09 09:27:22 · 1230 阅读 · 0 评论 -
5. MySQL 存储引擎(详解说明)
MySQL从3.23.34a开始就包含InnoDB存储引擎。大于等于5.5之后,默认采用InnoDB引擎。InnoDB是MySQL的 默认事务型引擎 ,它被设计用来处理大量的短期(short-lived)事务。可以确保事务的完整提交(Commit)和回滚(Rollback)。除了增加和查询外,还需要更新、删除操作,那么,应优先选择InnoDB存储引擎。除非有非常特别的原因需要使用其他的存储引擎,否则应该优先考虑InnoDB引擎。数据文件结构:(在《第02章_MySQL数据目录》章节已讲)原创 2025-03-07 09:04:14 · 1039 阅读 · 0 评论 -
13. MySQL 事务基础知识(详细说明实操剖析)
命令来查看当前 MySQL 支持的存储引擎都有哪些,以及这些存储引擎是否支持事务。原子性是指事务是一个不可分割的工作单位,要么全部提交,要么全部失败回滚。(国内很多网站上对一致性的阐述有误,具体你可以参考 Wikipedia 对 Consistency 的阐述)。根据定义,一致性是指事务执行前后,数据从一个 变换到另外一个 。这种状态 是 的而不是语法上的,跟具体的业务有关。那什么是合法的数据状态呢?满足 的状态就叫做合法的状态。通俗一点,这状态是由你自己 来定义的(比如满足现实世界中的约束)。原创 2025-02-25 08:43:47 · 813 阅读 · 0 评论 -
9-1. MySQL 性能分析工具的使用——last_query_cost,慢查询日志
在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。原创 2025-02-23 09:44:24 · 1147 阅读 · 0 评论 -
8-2 MySQL 索引的设计原则(超详细说明讲解)
冗余索引举例:建表语句如下我们知道,通过索引就可以对name列进行快速搜索,再创建一 个专门针对name列的索引就算是一个冗余索引,维护这个索引只会增加维护的成本,并不会对搜索有 什么好处.。另一种情况,我们可能会对某个列重复建立索引col2 INT,我们看到,col1 既是主键、又给它定义为一个唯一索引,还给它定义了一个普通索引,可是主键本身就 会生成聚簇索引,所以定义的唯一索引和普通索引是重复的,这种情况要避免。“在这个最后的篇章中,我要表达我对每一位读者的感激之情。原创 2025-02-23 09:34:13 · 923 阅读 · 0 评论 -
8. MySQL 索引的创建与涉及原则(详解说明)
在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。原创 2025-02-22 09:11:07 · 1079 阅读 · 0 评论 -
4. MySQL 逻辑架构说明
在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。原创 2025-02-22 09:01:51 · 1499 阅读 · 0 评论 -
3. MySQL 用户与权限管理,角色管理(详细说明操作配置)
在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。原创 2025-02-21 12:23:02 · 1382 阅读 · 0 评论 -
2. MySQL的数据目录(详解讲解)
在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。原创 2025-02-21 12:03:16 · 1391 阅读 · 0 评论 -
1. Linux下 MySQL 的详细安装与使用
在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。原创 2025-02-20 09:23:07 · 1471 阅读 · 0 评论 -
SQL语句中 DDL 、DML 、DQL 、DCL 分别是什么
DDL 数据定义语言:主要操作数据库中数据表的创建,定义,删除DML 数据操作语言:主要操作数据表中的数据的增,删,改DQL 数据查询语言:主要用于对数据的查询操作DCL 数据控制语言:主要用于设置/更改数据库用户权限。本文章参考:🔜🔜🔜聊聊SQL语句中 DDL 、DML 、DQL 、DCL 分别是什么_苜苜的烂笔头的博客-优快云博客_sql的ddl语句包括哪几个致敬大神。!!最后:有缘人,请留下你经过的足迹。转载 2022-11-16 11:09:30 · 403 阅读 · 0 评论 -
MySQL 游标的详解
MySQL有关游标的详解原创 2022-09-29 15:39:54 · 1307 阅读 · 1 评论 -
MySQL 流程控制 的详细讲解
MySQL流程控制的详细讲解原创 2022-09-29 15:35:38 · 1073 阅读 · 0 评论 -
MySQL 定义条件与处理程序 的详细讲解
定义条件是事先 定义程序执行过程中可能遇到的问题,处理程序定义了在遇到问题时应当采取的处理方式,并且保证存储过程或函数在遇到警告或错误时能继续执行。这样可以增强存储程序处理问题的能力,避免程序异常停止运行。其实就是和Java中的异常处理一样的,当在存储过程或存储函数中出现了,捕获异常,处理异常说明:定义条件和处理程序在存储过程和存储函数中都是使用的。定义条件就是根据 MySQL中给的错误码,自己对错误码进行一个重新命名。因为MySQL给我们的错误码一般都是数值或数值字符串。原创 2022-09-29 14:31:46 · 1493 阅读 · 2 评论 -
MySQL 变量的详细讲解
MySQL 有关变量的详细讲解原创 2022-09-29 14:25:30 · 4105 阅读 · 0 评论 -
MySQL 详解 存储过程 和 存储函数
MySQL详解讲解 存储过程和存储函数原创 2022-09-21 19:46:07 · 697 阅读 · 1 评论 -
MySQL视图详解
操作简单可以将经常使用的查询操作定义为视图,可以使开发人员不需要关心视图对应的数据表的结构,表与表之间的关联关系,也不需要关心数据表之间的业务逻辑和查询条件,而只需要简单地操作视图即可,极大简化了,开发人员对数据库的操作。减少数据冗余视图跟实际数据表不一样,它存储的是查询语句。所以,在使用的时候,我们要通过定义视图的查询语句来获取结果集。而视图本身不存储数据,不占用数据存储的资源,减少了数据的冗余。数据安全MySQL将用户对数据的访问限制 在某些数据的结果集上,而这些数据的结果集可以使用视图来实现。原创 2022-09-20 21:42:15 · 479 阅读 · 0 评论 -
Mysql 讲解所有的约束类型
如果两个表之间有关系 (一对一,一对多),比如:员工表和部门表(一对多),它们之间是否一定要键外键约束???答,不是建和不建外键约束有什么区别?答:建外键约束,你的操作(创建表,删除表,添加,修改,删除)会受到限制,从语法层面受到限制,例如:在员工表中不可能添加一个员工信息,它的部门的值在部门表中找不到。不建外键约束,你的操作(创建表,删除表,添加,修改,删除) 不受限制,要保证数据的引用完整性,只能依靠程序员的自觉,或者是Java程序中进行限定。原创 2022-09-17 20:09:58 · 453 阅读 · 0 评论 -
Mysql 详解所有的数据类型
一般用于枚举数据,比如系统设定取值范围很小且固定的场景。可以用于较小范围的统计数据,比如统计工厂的固定资产库存数量等。用于较大整数的计算,比如车站每日的客流量等。取值范围足够大,一般情况下不用考虑超限问题,用得最多。比如商品编号。只有当你处理特别巨大的整数时才会用到。比如双十一的交易量、大型门户网站点击量、证 券公司衍生产品持仓等。在决定用那种整数类型的时候,你需要考虑存储空间和可靠性用占用字节空间少的整数类型可以节省存储空间,原创 2022-09-17 18:55:15 · 782 阅读 · 0 评论 -
MySQL: 对表数据的增删改的相关练习题
MySQL: 对表数据的增删改的相关练习题原创 2022-08-26 08:44:04 · 1066 阅读 · 0 评论 -
Mysql : 对于表数据处理增删改的内容上的打字练习
第二种方式: 手动声明字段,按照声明的字段顺序插入数据 格式: INSERT INTO 表名 (列名1, 列名2, 列名3) VALUES (数据内容1, 数据内容2, 数据内容3);注意没有手动声明字段,一定要按照默认的字段顺序添加表的数据内容,如果省略了,表中列的任何一个数据内容都是会报错的。SET 更新的字段1 = 更新的内容1 , 更新的字段2 = 更新的内容2。VALUES (数据内容1, 数据内容2, 数据内容3),VALUES (数据内容1, 数据内容2, 数据内容3)...原创 2022-08-26 08:39:18 · 423 阅读 · 0 评论 -
Mysql: 表中数据的增删改
关于对表中数据的全部更新,以及表中数据的清空,需要慎重考虑,防止不必要的严重数据丢失。而承担公司损失的后果。!!原创 2022-08-26 08:33:33 · 397 阅读 · 0 评论 -
Mysql创建管理表的内容上的打字练习
同样的,在使用 ALTER TABLE 进行表的基本修改操作时,在执行操作过程之前,也应该确保对数据进行完整的备份,因为数据库的改变是无法撤销的,如果添加了一个不需要的字段,可以将其删除;所以,请慎重,再慎重。当查询中的表不在所在的数据库中时,需要定位到对应的数据库中去 如 数据库 .表名,当在查询上使用了字段的别名,其创建的表中的字段会以别名为 准创建表字段。● 修改现有的表中的列:格式: MODIFY 修改表中的数据类型:ALTER TABLE 修改的表名 MODIFY 修改的字段 修改的数据类型;原创 2022-08-23 16:20:21 · 233 阅读 · 0 评论 -
Mysql 创建管理数据库内容上的打字练习
—> 点击你刚刚将练习内容的复制到的那个模式里,——> 选择右上角的。,从中你可以看到,你刚刚自行编辑的打字练习内容中。,选择你所需要的,就可以开始你的打字练习之旅了。大家可以根据自己的需求来,进行相对应的选择。保存好后,点击退出该窗口,重新再次,点击。会显示如下窗口,我们。原创 2022-08-23 15:58:50 · 311 阅读 · 0 评论 -
Mysql: 管理数据库和表的相关练习
对于Mysql 数据库和表的相关练习原创 2022-08-23 15:42:35 · 380 阅读 · 0 评论 -
Mysql: COMMIT 和 ROLLBACK
COMMIT: 表示提交数据。一旦执行COMMIT,则数据就被永久的保存在了数据库中,意味着数据不可以回滚。ROLLBACK:回滚数据。一旦执行ROLLBACK,则可以实现数据的回滚,回滚到最近的一次COMMIT之后。!!原创 2022-08-23 15:28:34 · 3203 阅读 · 0 评论 -
Mysql: 创建表 和 管理表
对于上述中的对表的修改,删除表操作将把表的定义和表中的数据一起删除,并且Mysql在执行删除操作时,不会有任何的确定信息提示,因此执行删除操作应当慎重。在删除表前,最好对表中的数据进行备份,这样当操作失误时可以对数据进行恢复,以免造成无法挽回的后果。同样的,在使用进行表的基本修改操作时,在执行操作过程之前,也应该确保对数据进行完整的备份,因为数据库的改变是无法撤销的,如果添加了一个不需要的字段,可以将其删除;相同的,如果删除了一个需要的列,该列下面的所有数据都将会丢失。所以,请慎重,再慎重。!!原创 2022-08-23 15:22:51 · 879 阅读 · 0 评论 -
Mysql :创建数据库和管理数据库
上述管理数据库的一些操作,建数据库,修改数据库,删除数据库,这些操作你都是要有,对应的操作权限才可以进行的,对于一些危险的操作,无法撤销的操作 如 删除数据库,请慎重考虑,好再执行该操作,不然,你可以就需要跑路了,说实话,你跑得了吗,所以,对于,这些操作,请加以慎重考虑后,再执行,最好是多人考虑的结果,多方考虑,再执行。原创 2022-08-22 21:26:31 · 1698 阅读 · 0 评论 -
Mysql —— 子查询的 ”必备“ 练习
有关的子查询 ”必备“练习在Mysql数据库运用中查询是用的比较多的一项,其中较为复杂的便是 我们的 —— 子查询 了,所以设定了,如下的一些练习,用于更加熟练的掌握这门技术活关于这部分子查询的详细内容,大家可以移步到 🔜🔜🔜 Mysql 知行必会 “子查询”_ChinaRainbowSea的博客-优快云博客本次的练习题共为 20 道题目,需要用到的表的内容如下:具体练习如下:思路1: 使用子查询,找到Zlotkey 对应的部门编号,再通过该部门编号找到员工姓名和工资思路二: 使用自表连接原创 2022-08-20 11:12:54 · 1898 阅读 · 0 评论 -
Mysql —— “子查询”内容上的打字练习
—> 点击你刚刚将练习内容的复制到的那个模式里,——> 选择右上角的。,从中你可以看到,你刚刚自行编辑的打字练习内容中。,选择你所需要的,就可以开始你的打字练习之旅了。大家可以根据自己的需求来,进行相对应的选择。保存好后,点击退出该窗口,重新再次,点击。会显示如下窗口,我们。......原创 2022-08-14 14:54:44 · 234 阅读 · 0 评论 -
Mysql 知行必会 “子查询”
子查询指一个查询语句嵌套在另一个查询语句内部的查询,这个特性从 Mysql 4.1 开始引入的。SQL 中子查询的使用大大增强了 SELECT 查询的能力,因为很多时候,查询需要从结果集中获取数据,或者需要从同一个表中先计算得出结果,然后与这个数据结果 (可能是某个标量,也可能是某个集合) 进行比较上的操作判断。注意事项子查询的格式从结构格式上看就是简单的 查询语句之间的嵌套 ,与我们的 Java 中的 if, for, 嵌套 是一个差不多的意思。子查询同样也是可以多层嵌套的1.2 子查询的分类不同原创 2022-08-14 14:43:03 · 474 阅读 · 0 评论 -
Mysql —— 多行/聚合/分组函数 打字练习
GROUP BY 也会对为 NULL的字段(聚合键),进行统一的分组如果 一条 SELECT语句中出现了GROUP BY,那么 在SELECT 子句中出现的字段除了常数,分组函数,其他的必须是在 GROUP BY 中出现了的字段,反之,GROUP BY 出现的字段可以不用在 SELECT 中出现。COUNT(表中字段) : 计算指定字段在表中的个数,没有将为空NULL的属性的计算在内,说白了就是统计该字段下所有不为 NULL 的元素的总数,从而导致不同的字段其统计的数值也是不一样的,ORDER BY …..原创 2022-08-09 17:53:21 · 340 阅读 · 0 评论 -
Mysql —— 多行/聚合/分组函数
分组函数 又被人叫做是 聚合函数 以及多行函数 ,就是将多行汇总为一行,实际上,所有的聚合函数都是这样的,输入多行输出一行,如下,关于单行函数 的介绍 大家可以移步至 🔜🔜🔜 Mysql 中 “必知” 的单行处理函数_ChinaRainbowSea的博客-优快云博客大家记住如下 5 个常用的分组函数注意 :分组函数在使用的时候必须先进行分组 GROUP BY , 然后才能用,如果你没有对数据进行分组,整张表默认为一组**AVG 与 SUM ** :只适用于数值类型的字段,不适用于 字符串,日期时...原创 2022-08-09 17:18:33 · 1940 阅读 · 0 评论 -
Mysql 单行处理函数打字练习—— 让你熟悉必要的函数,提高查询效率
与ATAN(X)函数相比,ATAN2(M,N)需要两个参数,例如有两个点point(x1,y1)和point(x2,y2),使用ATAN(X)函数计算反正切值为ATAN((y2-y1)/(x2-x1)),使用ATAN2(M,N)计算反正切值则为ATAN2(y2-y1,x2-x1)。USER(),CURRENT_USER()、SYSTEM_USER(),SESSION_USER()返回当前连接MySQL的用户名,返回结果格式为“主机名@用户名”,sn)同CONCAT(s1,s2,…......原创 2022-08-01 09:35:29 · 243 阅读 · 0 评论 -
Mysql 中 “必知” 的单行处理函数
Mysql 必知 的单行处理函数原创 2022-07-31 22:38:51 · 415 阅读 · 0 评论 -
MySQL ——单行处理函数实例练习
Mysql —— 单行处理函数实例练习原创 2022-07-31 21:52:36 · 1314 阅读 · 0 评论 -
你不知道的 ,MySQL中的七种SQL JOINS的实现,满外连接
满外连接的结果是:左右表匹配的数据 + 左表没有匹配到的数据 + 右表没有匹配到的数据,就是上图 SQL JOINS图 中的左下图与 UNION 并集,操作的作用一样在 SQL99语法中满外连接(FULL OUTER JOIN) 同样其中的 OUTER可以省略不写,但是我们的 MySQL 不支持 FULL JOIN ,我们可以使用 左外连接 + 右外连接 的拼接实现,(LEFT JOIN UNION RIGHT JOIN) 代替 ,但是个人不建议使用 UNION 去重复的拼接,因为它在去重复的这件事上比较原创 2022-07-13 11:37:01 · 1187 阅读 · 0 评论 -
Mysqk 多表连接查询的 “打字练习”
会显示如下窗口,我们 点击 自定义课程 ——> 再点击 左上角的 添加有单个添加、批量添加 大家可以根据自己的需求来,进行相对应的选择*** 保存好后,点击退出该窗口,重新再次,点击 打字测试 ——> 点击你刚刚将练习内容的复制到的那个模式里,——> 选择右上角的 课程选择 ——> 自定义课程 ,从中你可以看到,你刚刚自行编辑的打字练习内容中 课程名称 ,选择你所需要的,就可以开始你的打字练习之旅了.........原创 2022-07-13 11:29:45 · 257 阅读 · 0 评论