
MySQL
文章平均质量分 91
小孔靠得住
不积跬步无以至千里,不积小流无以江海
展开
-
MySQL-触发器:触发器概述、触发器的创建、查看删除触发器、 触发器的优缺点
触发器是由`事件来触发`某个操作,这些事件包括`INSERT`、`UPDATE`、`DELETE`事件。所谓事件就是指用户的动作或者触发某项行为。如果定义了触发程序,当数据库执行这些语句时候,就相当于事件发生了,就会`自动`激发触发器执行相应的操作。当对数据表中的数据执行插入、更新和删除操作,需要自动执行一些数据库逻辑时,可以使用触发器来实现。原创 2024-04-13 23:55:16 · 1638 阅读 · 4 评论 -
MySQL-变量、流程控制与游标:变量、定义条件与处理程序、流程控制
变量在MySQL数据库的存储过程和函数中,可以使用变量来存储查询或计算的中间结果数据,或者输出最终的结果数据。定义条件是事先定义程序执行过程中可能遇到的问题,处理程序定义了在遇到问题时应当采取的处理方式,并且保证存储过程或函数在遇到警告或错误时能继续执行。这样可以增强存储程序处理问题的能力,避免程序异常停止运行。流程就分为三大类:顺序结构:程序从上往下依次执行分支结构:程序按条件进行选择执行,从两条或多条路径中选择一条执行循环结构:程序满足一定条件下,重复执行一组语句原创 2024-04-13 23:51:09 · 1123 阅读 · 1 评论 -
MySQL-存储过程与函数:存储过程概述、创建存储过程、调用存储过程、存储函数的使用、存储过程和函数的查看、修改、删除、关于存储过程使用的争议
存储过程的英文是 Stored Procedure。它的思想很简单,就是一组经过预先编译的 SQL 语句的封装。执行过程:存储过程预先存储在 MySQL 服务器上,需要执行的时候,客户端只需要向服务器端发出调用存储过程的命令,服务器端就可以把预先存储好的这一系列 SQL 语句全部执行。原创 2024-04-11 23:58:58 · 1184 阅读 · 1 评论 -
MySQL-数据类型:整数类型、浮点类型、定点数类型、位类型:BIT、日期与时间类型、文本字符串类型、ENUM类型、SET类型、二进制字符串类型、JSON 类型、空间类型
MySQL-数据类型:整数类型、浮点类型、定点数类型、位类型:BIT、日期与时间类型、文本字符串类型、ENUM类型、SET类型、二进制字符串类型、JSON 类型、空间类型原创 2024-04-10 23:54:51 · 1260 阅读 · 1 评论 -
MySQL-创建和管理表:基础知识、创建和管理数据库、创建表、修改表、重命名表、删除表、清空表、拓展
因为从系统架构的层次上看,MySQL 数据库系统从大到小依次是数据库服务器、数据库、数据表、数据表的行与列。原创 2024-04-10 23:40:37 · 3707 阅读 · 1 评论 -
MySQL-多表查询:多表查询分类、SQL99语法实现多表查询、UNION的使用、7种SQL JOINS的实现、SQL99语法新特性、多表查询SQL练习
多表查询,也称为关联查询,指两个或更多个表一起完成查询操作。前提条件:这些一起查询的表之间是有关系的(一对一、一对多),它们之间一定是有关联字段,这个关联字段可能建立了外键,也可能没有建立外键。原创 2024-04-09 23:58:40 · 1329 阅读 · 1 评论 -
MySQL-聚合函数:聚合函数概述、GROUP BY使用、HAVING使用、SELECT的执行过程、聚合函数SQL练习
聚合函数作用于一组数据,并对一组数据返回一个值。可以使用GROUP BY子句将表中的数据分成若干组过滤分组:HAVING子句FROM -> WHERE -> GROUP BY -> HAVING -> SELECT 的字段 -> DISTINCT -> ORDER BY -> LIMIT原创 2024-04-09 23:48:19 · 3264 阅读 · 1 评论 -
MySQL-复杂SQL语句编写:子查询分析与练习
子查询(内查询)在主查询之前一次执行完成。子查询的结果被主查询(外查询)使用 。注意事项:子查询要包含在括号内,将子查询放在比较条件的右侧单行操作符对应单行子查询,多行操作符对应多行子查询。原创 2024-04-07 23:56:42 · 1427 阅读 · 1 评论 -
MySQL-主从复制:概述、原理、同步数据一致性问题、搭建流程
一般应用对数据库而言都是“读多写少”,也就说对数据库读取数据的压力比较大,有一个思路就是采用数据库集群的方案,做主从架构、进行读写分离,这样同样可以提升数据库的并发处理能力。但并不是所有的应用都需要对数据库进行主从架构的设置,毕竟设置架构本身是有成本的。如果我们的目的在于提升数据库高并发访问的效率,那么首先考虑的是如何优化SQL和索引,这种方式简单有效;其次才是采用缓存的策略,比如使用 Redis将热点数据保存在内存数据库中,提升读取的效率;最后才是对数据库采用主从架构,进行读写分离。原创 2024-04-07 23:53:23 · 5579 阅读 · 2 评论 -
MySQL-基本SQL语句编写:运算符练习
MySQL-基本SQL语句编写:运算符练习原创 2024-04-06 15:35:16 · 981 阅读 · 1 评论 -
MySQL-用户与权限管理:用户管理、权限管理、角色管理
MySQL-用户与权限管理:用户管理、权限管理、角色管理原创 2024-04-06 15:18:23 · 2583 阅读 · 1 评论 -
MySQL-排序与分页
MySQL-排序与分页原创 2024-04-05 23:56:26 · 1048 阅读 · 3 评论 -
MySQL-存储引擎
如果在创建表的语句中没有显式指定表的存储引擎的话,那就会默认使用`InnoDB`作为表的存储引擎。原创 2024-04-05 23:55:12 · 1016 阅读 · 1 评论 -
MySQL-单行函数:数值函数、字符串函数、日期和时间函数、流程控制函数、加密与解密函数、MySQL信息函数、其他函数、单行函数练习
MySQL数值函数、字符串函数、日期和时间函数、流程控制函数、加密与解密函数、MySQL信息函数、其他函数、单行函数练习原创 2024-04-04 23:51:44 · 1284 阅读 · 1 评论 -
MySQL-逻辑架构:逻辑架构分析、SQL执行流程、数据库缓冲池
MySQL三层结构:连接层:客户端和服务器端建立连接,客户端发送 SQL 至服务器端;SQL 层(服务层):对 SQL 语句进行查询处理;与数据库文件的存储方式无关;存储引擎层:与数据库文件打交道,负责数据的存储和读取。原创 2024-04-04 21:32:04 · 1632 阅读 · 1 评论 -
MySQL-SQL编写练习:基本的SELECT语句
DDL:数据定义语言。CREATE \ ALTER \ DROP \ RENAME \ TRUNCATEDML:数据操作语言。INSERT \ DELETE \ UPDATE \ SELECT (重中之重)DCL:数据控制语言。COMMIT \ ROLLBACK \ SAVEPOINT \ GRANT \ REVOKE原创 2024-04-03 23:57:08 · 702 阅读 · 1 评论 -
MySQL-视图:视图概述、创建、查看、更新、修改、删除
视图是一种虚拟表,本身是不具有数据的,占用很少的内存空间,它是 SQL 中的一个重要概念。视图建立在已有表的基础上, 视图赖以建立的这些表称为基表。视图的创建和删除只影响视图本身,不影响对应的基表。但是当对视图中的数据进行增加、删除和修改操作时,数据表中的数据会相应地发生变化,反之亦然。向视图提供数据内容的语句为 SELECT 语句, 可以将视图理解为存储起来的SELECT语句原创 2024-04-03 23:47:22 · 9357 阅读 · 4 评论 -
MySQL-执行计划、explain关键字查询执行计划以及explain案例分析
MySQL 的执行计划(Execution Plan)是数据库查询优化器生成的一种指导性信息,它描述了 MySQL 执行查询时所采用的具体执行策略。执行计划通常由 MySQL 的查询优化器根据查询语句、表结构、索引等信息进行生成,并且用于指导 MySQL 数据库引擎执行查询操作。原创 2024-04-02 23:58:41 · 2610 阅读 · 1 评论 -
MySQL-linux安装-万能RPM法
MySQL-linux安装-万能RPM法原创 2024-04-02 13:48:46 · 1251 阅读 · 4 评论 -
MySQL-锁:共享锁(读)、排他锁(写)、表锁、行锁、意向锁、间隙锁,锁升级
在MySQL中,锁升级是指事务在执行过程中,将当前持有的锁从低级别升级到更高级别的过程。MySQL数据库中的锁是控制并发访问的重要机制,它们确保数据的一致性和完整性。因此,在这种场景下,合理使用共享锁和排他锁可以确保数据的完整性和一致性,避免潜在的并发问题。为1的产品行的共享锁,但在后续执行中需要对该行进行修改,因此需要将共享锁升级为排他锁。为100的订单行的意向排他锁,后续执行了删除操作,需要将意向锁升级为表级锁。原创 2024-03-09 23:59:08 · 2183 阅读 · 2 评论 -
MySQL-MVCC:概述、工作原理、readView实现快照读、数据库解决问题、MVCC无法防止超卖
多版本并发控制(Multi-Version Concurrency Control,简称MVCC)是一种数据库管理系统中广泛采用的并发控制机制,尤其在MySQL的InnoDB存储引擎中得到了广泛应用。MVCC主要是为了实现事务处理的并发性,同时确保事务间的隔离性,从而避免脏读、不可重复读以及幻读等问题,而这些是ACID原则中的隔离性所要求的。原创 2024-03-08 14:57:09 · 1604 阅读 · 2 评论 -
MySQL-查询SQL语句的执行过程:连接器->查询缓存(8就没了)->分析器->优化器->执行器->返回结果
查询SQL语句的执行过程:连接器->查询缓存->分析器->优化器->执行器->返回结果原创 2024-03-07 19:59:08 · 1193 阅读 · 3 评论 -
MySQL-事务隔离级别:READ UNCOMMITTED(未提交读)、READ COMMITTED(已提交读)、REPEATABLE READ(可重复读)、SERIALIZABLE(可串行化)
1、事务隔离级别:READ UNCOMMITTED(未提交读)、READ COMMITTED(已提交读)、REPEATABLE READ(可重复读)、SERIALIZABLE(可串行化)2、 InnoDB存储引擎在MySQL数据库中负责处理事务和行级锁定。Next-Key Lock是InnoDB为实现REPEATABLE READ隔离级别而采用的一种锁定机制,它结合了Record Lock(记录锁)和Gap Lock(间隙锁),旨在解决幻读问题。原创 2024-03-07 17:09:13 · 3726 阅读 · 2 评论 -
MySQL-约束:非空约束、唯一性约束、PRIMARY KEY 约束、自增列:AUTO_INCREMENT、FOREIGN KEY 约束、CHECK 约束、DEFAULT约束
MySQL-约束:非空约束、唯一性约束、PRIMARY KEY 约束、自增列:AUTO_INCREMENT、FOREIGN KEY 约束、CHECK 约束、DEFAULT约束,包括:概述和案例说明原创 2024-03-07 02:30:25 · 1243 阅读 · 4 评论 -
MySQL-视图:视图概述、使用视图注意点、视图是否影响基本表
在数据库管理系统中,视图(View)是一种虚拟表,它并不实际存储数据,而是基于一个或多个实际表的查询结果。视图提供了一种对数据库中数据进行抽象和封装的方式,用户可以按照自己的需求定义视图,并通过视图来操作和访问数据,而无需直接处理底层表结构的复杂性。原创 2024-03-06 23:41:39 · 4107 阅读 · 3 评论 -
MySQL-索引:聚集索引、覆盖索引、组合索引、前缀索引、唯一索引(附带例子解释)
对聚集索引、覆盖索引、组合索引、前缀索引、唯一索引等索引进行加深理解,并附带例子解释原创 2024-03-05 16:38:04 · 3234 阅读 · 5 评论