
MySQL入门教程
文章平均质量分 86
面向初学者的 MySQL 教程,包括 MySQL 8.0 安装与配置、账户和权限、数据库和数据表的管理、备份与维护、使用 SQL 执行增删改查、视图、索引、存储过程、触发器、各种应用程序接口以及使用技巧。
不剪发的Tony老师
《SQL编程思想》作者,PostgreSQL ACE。
展开
-
《MySQL 入门教程》第 36 篇 Python 访问 MySQL
本篇介绍如何利用 MySQL Connector/Python 接口连接 MySQL 数据库,执行数据的增删改查操作、调用存储过程以及操作 BLOB 数据。原创 2023-01-10 19:07:09 · 1971 阅读 · 0 评论 -
如果有人问你 SQL 约束,记得把这篇文章给他
介绍 SQL 标准中定义的完整性约束,包括非空约束、唯一约束、主键约束、外键约束、检查约束和默认值,以及主流数据库中的实现:Oracle、MySQL、Microsoft SQL Server、PostgreSQL、SQLite。原创 2020-03-06 15:58:05 · 4351 阅读 · 7 评论 -
如何为 MySQL 表中的字段选择合适的数据类型
详细分析了 MySQL 支持的各种数据类型,包括数字类型 INETGER、DECIAML、DOUBLE 等,字符串类型 CHAR、VARCHAR、TEXT、BLOB 等,日期时间类型 DATE、TIME、DATETIME 等,JSON 以及空间数据类型。分析了它们的特点和使用场景,以及如何为表中的字段选择合适的数据类型。原创 2020-09-10 22:45:01 · 3941 阅读 · 0 评论 -
SQL + NoSQL = MySQL,MySQL 文档存储攻略
MySQL文档存储使其可以同时支持传统的 SQL 应用程序和模式自由的文档数据库应用程序,从而消除了对单独 NoSQL 文档数据库的需求。开发人员可以在同一数据库和同一应用程序中混合使用关系数据和 JSON 文档。原创 2020-01-08 11:15:17 · 4508 阅读 · 1 评论 -
《MySQL 入门教程》第 35 篇 PHP 访问 MySQL
本篇介绍如何利用 PHP 数据对象(PDO)接口连接 MySQL 数据库,创建和删除表、执行数据的增删改查操作、事务的管理以及调用存储过程和函数。原创 2020-10-12 21:45:21 · 1912 阅读 · 6 评论 -
《MySQL 入门教程》第 34 篇 计划任务
MySQL 支持定时执行的计划任务,类似于 Unix crontab 或者 Windows 定时任务,被称为事件(Event)或者计划事件。事件是一个存储在数据库服务器中的 SQL 程序,在指定的时间范围内定期执行,调度和执行事件的服务被称为事件调度器(Event Scheduler)。MySQL 使用 CREATE EVENT 语句创建计划事件,使用 SHOW EVENTS 语句查看计划事件,使用 ALTER EVENT 语句修改计划事件,使用 DROP EVENT 语句删除计划事件。原创 2020-10-07 22:16:43 · 926 阅读 · 2 评论 -
《MySQL 入门教程》第 33 篇 触发器
MySQL 触发器(trigger)是一种存储程序,它和一个指定的表相关联,当该表中的数据发生变化时自动执行。MySQL 支持行级 INSERT、UPDATE 和 DELETE 触发器,可以在触发事件之前或者之后执行,分别称为 BEFORE 触发器和 AFTER 触发器。MySQL 使用 CREATE TRIGGRT 创建触发器,通过 SHOW TRIGGERS 或者系统表 INFORMATION_SCHEMA.TRIGGERS 查看触发器信息,使用 DROP TRIGGER语句删触发器。原创 2020-10-06 22:07:26 · 2980 阅读 · 4 评论 -
《MySQL 入门教程》第 32 篇 存储过程(二)
本篇详细介绍了 MySQL 存储过程和函数中的编程功能,包括变量、条件控制语句、循环控制语句、错误处理、游标的使用以及访问权限控制。原创 2020-09-29 22:49:28 · 5195 阅读 · 6 评论 -
《MySQL 入门教程》第 31 篇 存储过程(一)
MySQL 存储过程(Stored procedure)和存储函数(Stored function)是一种存储在数据库中的程序,可以包含多个 SQL 语句,提供许多过程语言的功能,例如变量定义、条件语句、循环语句、游标以及异常处理等。本文介绍了 MySQL 存储过程和函数的创建(CREATE PROCEDURE、CREATE FUNCTION)、查看(SHOW PROCEDURE、SHOW FUNCTION)、修改以及删除(DROP PROCEDUR、DROP FUNCTION)操作。原创 2020-09-27 12:33:55 · 4575 阅读 · 1 评论 -
《MySQL 入门教程》第 30 篇 数据库索引
数据库索引(Index)就像书籍后面的关键字索引,按照关键字进行排序,并且提供了指向具体内容的页码。索引可以用于提高数据库的查询性能;但是索引需要占用额外的磁盘空间,修改数据时也需要进行索引的维护。本篇介绍 MySQL 索引的创建、查看、修改以及删除操作。原创 2020-09-23 21:39:10 · 2401 阅读 · 7 评论 -
《MySQL 入门教程》第 29 篇 视图
MySQL 视图就是一个存储在数据库中的查询语句。视图本身不包含数据,因此也被称为虚拟表(Virtual Table)。本文介绍了如何使用 CREATE VIEW 创建视图、SHOW CREATE VIEW 查看视图、ALTER VIEW 修改视图以及 DROP VIEW 删除视图。 MySQL 处理视图的算法包括 MERGE、TEMPTABLE 或者 UNDEFINE(默认值)。同时还讨论了可更新视图以及 WITH CHECK OPTION 选项。原创 2020-09-17 21:20:24 · 774 阅读 · 0 评论 -
《MySQL 入门教程》第 28 篇 字符集与排序规则
介绍 MySQL 中的字符集(Character Set)和排序规则(Collation)。字符集决定了能够存储哪些字符,排序规则定义了字符集中字符的排序和比较顺序,包括是否区分大小写,是否区分重音等。MySQL 支持服务器、数据库、表、字符字段级别以及字符串常量的字符集和排序规则设置,同时还可以设置客户端连接的字符集和国家字符集。原创 2020-09-14 21:54:49 · 2862 阅读 · 2 评论 -
《MySQL 入门教程》第 27 篇 事务控制
本篇介绍 MySQL InnoDB 存储引擎中的数据库事务概念和 ACID 属性(原子性、一致性、隔离性以及持久性),并发事务可能带来的脏读、不可重复读、幻读和更新丢失问题以及读未提交、读已提交、可重复读、序列化 4 种隔离级别,演示了如何使用事务控制语句(TCL)对事务进行处理,包括 START TRANSACTION、COMMIT、ROLLBACK 以及 SAVEPOINT 语句。原创 2020-09-06 22:21:32 · 571 阅读 · 1 评论 -
《MySQL 入门教程》第 26 篇 DML 语句之合并数据
介绍如何在 MySQL 中实现数据合并操作,包括 INSERT ON DUPLICATE KEY 和 REPLACE 语句。原创 2020-09-04 21:43:35 · 1266 阅读 · 4 评论 -
《MySQL 入门教程》第 25 篇 DML 语句之删除数据
本篇介绍 MySQL 中的数据删除操作,也就是 DELETE 语句。具体内容包括单表删除、DELETE JOIN 实现的跨表删除和多表删除操作、TRUNCATE TABLE 实现快速删除。原创 2020-09-02 21:03:39 · 1778 阅读 · 1 评论 -
《MySQL 入门教程》第 24 篇 DML 语句之更新数据
MySQL 使用 UPDATE 语句更新表中的数据,支持单表更新、UPDATE JOIN 跨表更新以及多表更新。原创 2020-09-01 14:08:10 · 587 阅读 · 0 评论 -
《MySQL 入门教程》第 23 篇 DML 语句之插入数据
介绍 MySQL 中的数据插入语句,包括如何使用 INSERT 插入单条记录、插入多条记录以及插入一个查询结果。原创 2020-08-28 22:11:54 · 823 阅读 · 0 评论 -
《MySQL 入门教程》第 22 篇 窗口函数
窗口函数(Window Function)是 MySQL 8.0 新增的一个重要的功能,可以为数据分析提供强大的支持,例如计算分组排名、累积求和、同比/环比增长率等。本文介绍了 MySQL 窗口函数的语法以及常用窗口函数的作用,例如 SUM、AVG、RANK、ROW_NUMBER、LAG、LEAD 等。原创 2020-08-25 17:52:39 · 2332 阅读 · 0 评论 -
《MySQL 入门教程》第 21 篇 集合操作符
介绍在 MySQL 中如何使用 UNION 和 UNION ALL 并集操作符将两个查询结果合并成一个结果集,返回第一个查询或者第二个查询中的数据;以及如何模拟 INTERSECT 交集运算符返回两个查询结果中的共同部分,模拟 EXCEPT 差集运算符返回出现在第一个查询结果中,但不在第二个查询结果中的数据。原创 2020-08-22 21:25:33 · 1273 阅读 · 0 评论 -
《MySQL 入门教程》第 20 篇 通用表表达式
MySQL 通用表表达式(Common Table Expression)是一个在语句级别定义的临时结果集,定义之后可以在该语句中多次进行引用。通用表表达式也叫 WITH 子句,能够简化复杂的连接查询和子查询,同时实现查询结果的重复利用,从而提高复杂查询语句的可读性和性能。WITH RECURSIVE 表示递归 CTE,可以对自己进行引用,从而非常方便地遍历具有层次结构或者树状结构的数据。原创 2020-08-17 12:39:39 · 3288 阅读 · 3 评论 -
《MySQL 入门教程》第 19 篇 子查询
MySQL 子查询(Subquery)是指嵌套在其他 SQL 语句( SELECT、INSERT、UPDATE、DELETE 等)中的查询语句。本文介绍了 MySQL 中的标量子查询、行子查询、表子查询,以及派生表、IN、ALL、ANY/SOME运算符,关联子查询和EXISTS运算符。原创 2020-08-13 17:02:30 · 2097 阅读 · 0 评论 -
《MySQL 入门教程》第 18 篇 连接查询
本篇介绍了如何通过 MySQL 连接查询(JOIN)从多个表中返回关联数据,具体包括内连接INNER JOIN、左外连接LEFT OUTER JOIN、右外连接RIGHT OUTER JOIN、交叉连接CROSS JOIN、自然连接NATURAL JOIN)以及自连接等。原创 2020-08-09 22:33:57 · 1731 阅读 · 2 评论 -
《MySQL 入门教程》第 17 篇 MySQL 变量
MySQL 中的变量可以分为系统全局变量和会话变量、用户变量以及局部变量。本篇介绍这些变量的设置和使用,包括使用SHOW VARIABLES和SELECT 语句查看系统变量,使用SET命令设置系统变量和用户变量,以及通过用户变量传递数据和构造预编译的动态SQL语句。原创 2020-08-03 17:46:28 · 2019 阅读 · 3 评论 -
《MySQL 入门教程》第 16 篇 MySQL 常用函数之日期函数
介绍 MySQL 中常见的日期函数和运算符,包括获取当前日期和时间的 CURRENT_DATE、CURRENT_TIME、NOW、CURRENT_TIMESTAMP、SYSDATE等,构造一个日期时间值的FROM_DAYS、MAKEDATE、MAKETIME、TIMESTAMP等,获取日期时间中的信息的EXTRACT、YEAR、MONTH、DAY、WEEK等,将日期时间转换为其他类型DATE_FORMAT等,以及日期时间的加减运算ADDDATE、SUBDATE、TIMESTAMPDIFF等函数。原创 2020-07-27 21:44:56 · 1449 阅读 · 0 评论 -
《MySQL 入门教程》第 15 篇 MySQL 常用函数之字符函数
介绍 MySQL 中常见的字符函数和运算符,包括字符与编码转换ASCII和CHAR、获取字符串长度 CHAR_LENGTH和LENGTH、连接字符串CONCAT和CONCAT_WS、大小写转换LOWER和UPPER、查找子串位置INSTR和FIELD、返回子串SUBSTRING和TRIM、替换子串REPLACE和REVERSE、填充字符串LPAD和RPAD、字符串比较STRCMP、Base64 编码与解码等函数。原创 2020-07-22 21:00:01 · 1720 阅读 · 2 评论 -
《MySQL 入门教程》第 14 篇 MySQL 常用函数之数学函数
介绍 MySQL 中常用的数学函数,包括算术运算符、绝对值函数、取整/四舍五入函数、指数/对数函数、平方/开方函数、三角函数、最大值/最小值函数、随机数函数、进制转换函数、循环冗余校验码函数。原创 2020-07-13 18:02:17 · 1676 阅读 · 0 评论 -
《MySQL 入门教程》第 13 篇 CASE 表达式与控制流函数
MySQL 为 SQL 语句提供了类似 if-then-else 的逻辑处理功能,可以基于不同的条件返回不同的结果。这些功能包括 CASE 表达式和一些控制流函数:IF 函数、IFNULL 函数、COALESCE 函数以及 NULLIF 函数。原创 2020-07-06 17:42:29 · 1705 阅读 · 0 评论 -
《MySQL 入门教程》第 12 篇 分组统计
聚合函数(Aggregate Function)用于对一组数据进行汇总计算,并且返回单个分析结果。MySQL 中常见的聚合函数包括:COUNT、AVG、SUM、MAX 、MIN以及GROUP_CONCAT。GROUP BY子句可以将数据按照某种规则进行分组,与聚合函数一起使用可以实现分组汇总;WITH ROLLUP选项还会生成小计和总计等,GOUPING函数可以识别出这些汇总数据。HAVING子句可以对分组汇总后的结果进行过滤。原创 2020-06-30 17:17:58 · 4000 阅读 · 5 评论 -
《MySQL 入门教程》第 11 篇 限制结果数量
MySQL 中的 LIMIT 和 OFFSET 子句可以用于限制查询返回结果的数量,从而实现常见的 Top-N 查询、分页查询以及指定名次的数据等功能。原创 2020-06-23 22:54:09 · 2004 阅读 · 2 评论 -
《MySQL 入门教程》第 10 篇 数据排序
介绍如何使用 ORDER BY 对查询结果进行排序显示,包括基于单个字段或者多个字段排序、基于表达式排序、空值排序、中文排序以及利用 FIELD 函数实现自定义排序。原创 2020-06-18 15:40:44 · 2061 阅读 · 0 评论 -
《MySQL 入门教程》第 09 篇 字符串模式匹配
介绍 MySQL 中实现字符串模糊查找的两种方法:LIKE 运算符以及正则表达式函数 REGEXP_LIKE 和 REGEXP 、RLIKE 运算符。原创 2020-06-15 10:23:15 · 2291 阅读 · 0 评论 -
《MySQL 入门教程》第 08 篇 过滤条件
利用 WHERE 查询条件来实现数据的过滤,包括比较运算符、空值判断 IS NULL 运算符、构成复合条件的逻辑运算符 AND、OR、NOT 等,以及排除重复数据的 DISTINCT。原创 2020-06-09 16:36:33 · 2210 阅读 · 1 评论 -
《MySQL 入门教程》第 07 篇 简单查询
本篇介绍如何使用 SELECT 语句查询 MySQL 中的表,包括查询指定字段和全部字段、快速查询信息、使用别名和代码注释。原创 2020-06-04 15:08:02 · 1310 阅读 · 0 评论 -
《MySQL 入门教程》第 06 篇 备份与恢复
MySQL 数据库备份可以用于系统崩溃、硬件故障或者用户误删除数据时的数据恢复。本文介绍了 MySQL 的各种备份方式、策略和实际案例,包括mysqldump、mysqlpump 逻辑备份与还原、Xtrabackup 物理全备、增量备份与时间点恢复。原创 2020-03-13 17:35:51 · 2412 阅读 · 1 评论 -
《MySQL 入门教程》第 05 篇 账户和权限
介绍 MySQL 8.0 中的账户和权限管理,包括用户、权限和角色的操作。原创 2019-09-24 21:50:05 · 1953 阅读 · 1 评论 -
《MySQL 入门教程》第 04 篇 管理表
文本介绍 MySQL 中如何创建表(CREATE TABLE)、修改表(ALTER TABLE)和删除表(DROP TABLE)。原创 2019-09-12 17:33:07 · 1916 阅读 · 4 评论 -
《MySQL 入门教程》第 03 篇 管理数据库
本篇主要介绍 MySQL 数据库的创建、查看、选择和删除操作,包括使用 mysql 命令行和 MySQL Workbench 图形工具两种方式。原创 2019-09-01 21:54:41 · 2238 阅读 · 1 评论 -
《MySQL 入门教程》第 02 篇 MySQL 安装
本文介绍如何在 Windows 平台使用 MySQL Installer 工具安装 MySQL8.0 数据库服务器以及各种工具,以及 Linux 平台使用命令安装 MySQL 数据库服务器。原创 2019-08-27 20:45:36 · 2769 阅读 · 5 评论 -
《MySQL 入门教程》第 01 篇 MySQL 简介
数据库(Database)是许多相关数据构成的集合。主要的 DBMS 可以分为关系数据库管理系统和非关系数据库管理系统。MySQL 是最流行的开源 SQL 数据库管理系统,由 Oracle 公司进行开发并提供支持。SQL 代表结构化查询语言(Structured Query Language),它是管理和访问关系数据库的标准语言。原创 2019-08-25 22:02:01 · 2347 阅读 · 2 评论