教程介绍
本套教程是为零基础想要学习MySQL的学习者量身定制的学习教程,完全从零开始由浅入深掌握MySQL的使用,最终达到灵活使用MySQL,能够使用MySQL解决实际工作问题。本教程共17章,字数超10w+,配图超100+,本教程坚持已图文并茂的方式讲解每一个知识点,让读者能够更好的吸收消化每一个知识难题。
坚持以零基础为中心,坚持以实用为原则。因此本套教程不会设计过多原理部分的内容讲解,旨在让读者轻松掌握MySQL的使用,带领读者快速走进MySQL的世界。虽然并不会涉及过多原理部分的知识,但在工作中所要求掌握的MySQL知识点本系列教程"应有尽有"。
本系列教程配备有专门的学习群:870033293 ,欢迎各位读者进入学习交流群与其他读者一起交流学习
本套教程涵盖内容:数据库系统的简介、基本概念,数据库基本的DDL/DML/DQL等操作、数据库字符集、排序、分组、聚合、having、case when语句、数据库备份与恢复、约束、级联、外键、表连接(内连接、左/右连接、全连接)、子查询、复杂查询、表关系、DCL创建用户、删除用户、赋予/回收权限、事务、视图、存储过程、存储函数、游标、触发器、范式、JDBC、SQL注入、SQL批处理、JDBC连接参数详解、JDBC执行存储过程、Druid连接池、连接池优化、等操作知识点;
详细目录
第1章 数据库的介绍 13
1.1 数据库概述 13
1.2 常见数据库 14
1.3 登录MySQL数据库 15
1.4 Navicat 图形化工具 18
1.5 MySQL与数据库的关系 20
1.6 SQL语句简介 21
1.6.1 SQL语句分类 21
1.6.2 MySQL注释 22
第2章 数据库的基本操作 22
2.1 DDL操作数据库 22
2.1.1 创建数据库相关操作 22
2.1.2 查看数据库相关操作 23
2.1.3 修改数据库编码 23
2.1.4 删除数据库 23
2.1.5 使用数据库 24
2.2 DDL操作表结构 24
2.2.1 MySQL数据类型 24
2.2.2 创建表 25
2.2.3 查看表 26
2.3.4 复制表结构 27
2.3.5 删除表 27
2.3.6 修改表结构 28
2.3.7 修改表字符集 29
2.3 DML操作表中的数据 30
2.3.1 插入记录 30
2.3.2 更新记录 31
2.3.3 删除表记录 32
2.3.4 清空表 33
2.3.5 增删改方法小结 33
2.4 数据库的查询 34
2.4.1 查询全部数据 34
2.4.2 查询指定列 35
2.4.3 指定列的别名进行查询 36
2.4.4 清除重复值 37
2.4.5 查询结果参与运算 39
2.5 DQL条件查询 41
2.5.1 准备数据 41
2.5.2 比较运算符 42
2.5.3 逻辑运算符 43
2.5.4 in关键字 44
2.5.5 范围查询 44
2.5.6 like 关键字 44
2.5.7 查询为空的列IS NULL 45
2.5.8 条件查询小结 46
第3章 MySQL字符集 46
3.1 DOS命令行下汉字乱码的问题 46
3.1.1 字符集相关参数: 47
3.1.2 乱码的原因 47
3.1.3 客户端编码 48
3.1.4 数据传递过程 49
第4章 DQL查询语句 51
4.1 排序 51
1.1.1 单列排序 52
1.1.2 组合排序 52
4.2 聚合函数 53
1.2.1 五个聚合函数 53
1.2.2 语法: 53
4.3 分组 54
1.3.1 分组的用法 54
1.3.2 having与where的区别 57
4.4 limit语句 58
1.4.1 limit语句简介 58
1.4.2 LIMIT的使用场景: 58
4.5 case when语句 59
1.5.1 case when使用示例 59
1.5.2 case when 案例 60
1)案例1 60
2)案例2 63
第5章 数据库备份 65
5.1 备份的应用场景 65
5.2 备份与还原的语句 65
5.2.1 数据备份 65
1)导出表: 66
2)导出库: 67
3)指定条件导出: 67
5.2.2 数据还原 68
1)mysql命令恢复 68
2)source 71
第6章 数据库约束 72
6.1 数据库约束的概述 72
6.1.1 约束的作用: 72
6.1.2 约束种类: 72
6.2 主键约束 73
6.2.1 主键的作用 73
6.2.2 主键的特点 73
6.2.3 主键列的选择 73
6.2.4 创建主键方式 73
6.2.5 删除主键 74
6.2.6 主键自增 75
6.2.7 联合主键 77
6.3 唯一约束 78
6.4 非空约束 79
6.5 默认值 79
6.6 检查约束 80
6.7 外键约束 81
6.7.1 单表的缺点 81
6.7.2 什么是外键约束 83
6.7.3 创建外键 84
6.7.4 删除外键 87
6.7.5 外键的级联 88
1)级联问题引入 89
2)级联的种类 90
3)级联操作 90
3.8 数据约束小结 92
第7章 连接查询 92
7.1 表的关系简介 92
7.1.1 一对多 92
7.1.2 多对多 93
7.1.3 一对一 95
7.1.4 表关系小结 96
7.2 笛卡尔积 97
7.2.1 什么是笛卡尔积现象 98
7.2.2 如何清除笛卡尔积现象的影响 99
7.3 内连接 100
7.3.1 隐式内连接 100
7.3.2 显式内连接 100
7.3.3 内连接查询步骤: 102
7.4 左外连接 102
7.4.1 左连接的语法: 102
7.4.2 左连接的案例: 102
7.5 右外连接 104
7.5.1 右连接的语法: 104
7.5.2 右连接的案例: 104
7.6 全连接 105
第8章 子查询 108
8.1 查询的结果 109
8.1.1 结果为单行单列 110
8.1.2 结果为多行单列 112
8.1.3 子查询结果为多行多列 114
8.2 子查询小结 115
8.3 exists语句 115
第9章 多表查询的案例 118
9.1 准备数据 118
9.2 练习1 121
9.3 练习2 122
9.4 练习3 123
9.5 练习4 124
9.6 练习5 126
9.7 练习6 127
9.8 练习7 128
第10章 DCL (Data Control Language) 129
10.1 用户管理 129
10.1.1 查看用户 129
10.1.2 创建用户 130
10.1.3 修改密码 133
1)修改密码 133
2)破解密码 134
10.1.4 删除用户 139
10.2 权限管理 140
10.2.1 授予权限 142
1)【案例-1-列权限】 142
2)【案例-2-表权限】 145
3)【案例-3-数据库权限】 148
4)【案例-4-全局权限】 152
5)小结 154
10.2.2 撤销权限 157
10.2.3 权限原理 160
1)权限磁盘表 160
2)flush privileges 165
第11章 事务 167
11.1 事务的概念 167
11.1.1 什么是事务: 167
11.1.2 事务的四大特性 167
11.2 事务的应用场景说明 167
11.3 手动提交事务 169
11.3.1 手动提交事务的SQL语句 169
11.3.2 手动提交事务使用过程: 170
11.3.3 案例演示1:事务提交 170
11.3.4 案例演示2:事务回滚 172
11.4 自动提交事务 175
11.4.1 案例演示3:自动提交事务 175
11.4.2 取消自动提交 175
11.5 事务原理 178
11.5.1 原理图: 178
11.5.2 事务的原理解释: 178
11.6 回滚点 179
11.6.1 什么是回滚点 179
11.6.2 回滚点的操作语句 179
11.6.3 具体操作: 179
第12章 事务的隔离级别 182
12.1 并发访问的三个问题 182
12.2 设置隔离级别 182
12.2.1 四种隔离级别: 182
12.2.2 四种隔离级别起的作用: 183
12.3 安全和性能对比 183
12.4 MySQL相关的命令: 183
12.5 脏读 184
12.5.1 脏读演示 185
12.5.2 解决脏读 185
12.6 不可重复读 186
12.6.1 和脏读的区别: 187
12.6.2 不可重复读演示 187
12.6.3 解决不可重复读 188
12.7 幻读 189
12.7.1 幻读解决情况1): 189
12.7.2 幻读解决情况2): 190
12.7.3 幻读问题出现情况1): 191
12.7.3 特殊情况: 193
12.8 串行化 194
12.8.1 概念 194
12.8.2 串行化演示 195
第13章 触发器与视图 196
13.1 触发器 196
13.1.1 触发器介绍 196
13.1.2 触发器语法 196
13.2 视图 199
13.2.1 创建视图 200
1)视图创建的语法 200
2)视图的使用 201
13.2.2 修改视图 206
1)创建时修改 206
2)使用alter语句更改视图 207
3)更新视图内容 208
13.2.3 删除视图 209
13.2.4 视图的其他参数 210
1)ALGORITHM 211
2)DEFINER 211
3)SQL SECURITY 212
4)WITH 214
5)小结: 218
第14章 存储过程和存储函数 218
14.1 存储程序优缺点 218
14.2 存储过程的使用 219
14.2.1 存储过程的语法 220
14.2.2 变量 220
14.2.3 if语句 221
14.2.4 传递参数 222
# **读者福利**
![秋招我借这份PDF的复习思路,收获美团,小米,京东等Java岗offer](https://img-blog.csdnimg.cn/img_convert/5a37ccc18c3a672885ca00da8df5e397.webp?x-oss-process=image/format,png)
**更多笔记分享**
![秋招我借这份PDF的复习思路,收获美团,小米,京东等Java岗offer](https://img-blog.csdnimg.cn/img_convert/5e121423a1a9bc7f5c01d8bc37895e89.webp?x-oss-process=image/format,png)
18
第14章 存储过程和存储函数 218
14.1 存储程序优缺点 218
14.2 存储过程的使用 219
14.2.1 存储过程的语法 220
14.2.2 变量 220
14.2.3 if语句 221
14.2.4 传递参数 222
# **读者福利**
[外链图片转存中...(img-btUxLcWN-1714517547407)]
**更多笔记分享**
[外链图片转存中...(img-o97iRDaG-1714517547408)]
> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/topics/618154847)收录**