目 录
第1章
数据库入门基础
1.1 数据库概述 1
1.1.1 基本概念—信息与数据 1
1.1.2 数据库简介 2
1.1.3 数据库系统结构 5
1.1.4 数据库系统特点 6
1.1.5 数据库系统类型 7
1.2 数据模型 8
1.2.1 数据模型简介 8
1.2.2 数据模型的种类 8
1.2.3 数据模型的组成 9
1.3 概念模型 10
1.3.1 概念模型简介 10
1.3.2 概念模型设计 12
1.4 逻辑模型 14
1.4.1 逻辑模型简介 14
1.4.2 逻辑模型的分类 14
1.4.3 关系模型设计 16
1.5 数据库的结构 17
1.5.1 数据库系统的三级模式 17
1.5.2 数据库系统的二级映像 18
1.6 数据库管理系统 19
1.6.1 数据库管理系统的功能 19
1.6.2 数据库管理系统的组成 20
1.6.3 常见的数据库管理系统及特点 20
1.7 拓展练习 21
第2章
初识MySQL数据库
2.1 MySQL数据库简介 22
2.1.1 认识MySQL数据库 22
2.1.2 MySQL的版本 23
2.1.3 MySQL数据库的工作方式 24
2.2 MySQL的部署 25
2.2.1 部署要求 25
2.2.2 Windows中安装部署MySQL 26
2.2.3 测试MySQL运行环境 32
2.2.4 Windows中命令部署MySQL 33
2.2.5 登录及修改MySQL密码 36
2.2.6 Linux中用官方仓库部署MySQL 36
2.3 数据库管理工具 38
2.3.1 常见数据库管理工具及特点 39
2.3.2 数据库管理工具的安装和连接 40
2.4 数据库服务器的关闭与开启 45
2.4.1 通过命令完成 45
2.4.2 通过“服务”组件完成 46
2.5 数据库密码丢失的处理方法 47
2.5.1 Windows系统 47
2.5.2 Linux系统 48
2.5.3 初始化系统重置密码 49
2.6 拓展练习 50
第3章
基础操作
3.1 SQL基础 51
3.1.1 SQL简介 51
3.1.2 SQL与MySQL的语言结构 52
3.1.3 MySQL执行工具 53
3.2 数据库管理操作 54
3.2.1 数据库对象管理简介 54
3.2.2 查看数据库 54
3.2.3 创建数据库 55
3.2.4 选择数据库 57
3.2.5 修改数据库 57
3.2.6 删除数据库 58
3.3 数据表管理操作 59
3.3.1 认识数据表 59
3.3.2 查看数据表 60
3.3.3 创建数据表 61
3.3.4 删除数据表 63
3.4 数据记录的管理 64
3.4.1 认识数据记录 64
3.4.2 插入数据记录 64
3.4.3 查询数据记录 66
3.4.4 更新数据记录 67
3.4.5 删除数据记录 69
3.5 可视化MySQL管理工具的使用 70
3.5.1 Navicat界面 70
3.5.2 输入与执行SQL语句 71
3.5.3 数据库的管理操作 72
3.5.4 数据表的管理操作 72
3.5.5 数据记录的管理操作 73
3.5.6 数据表的导出与导入 73
3.6 拓展练习 77
第4章
数据类型、约束与运算符
4.1 MySQL中的数据类型 78
4.1.1 数字类型 78
4.1.2 日期和时间类型 82
4.1.3 字符串类型 87
4.1.4 JSON类型 91
4.1.5 其他数据类型 92
4.2 表的约束 92
4.2.1 数据完整性 92
4.2.2 默认约束 93
4.2.3 非空约束 97
4.2.4 唯一约束 98
4.2.5 主键约束 100
4.3 数据表高级操作 101
4.3.1 重命名表 101
4.3.2 更新字段数据类型 102
4.3.3 更新字段名 103
4.3.4 添加字段 104
4.3.5 删除字段 105
4.3.6 修改字段排列位置 106
4.3.7 复制数据表 107
4.4 MySQL常见运算符 107
4.4.1 运算符简介 107
4.4.2 算术运算符 107
4.4.3 比较运算符 108
4.4.4 逻辑运算符 109
4.4.5 运算符的优先级 110
4.5 拓展练习 111
第5章
数据查询
5.1 查询语句的基本格式 113
5.1.1 查询语句的结构组成 113
5.1.2 查询语句的执行顺序 114
5.2 单表查询 115
5.2.1 查询所有字段 115
5.2.2 查询指定字段 116
5.2.3 使用WHERE子句查询指定记录 117
5.2.4 使用IN查询指定集合中的记录 117
5.2.5 排除范围查询 118
5.2.6 使用LIKE进行模糊匹配查询 118
5.2.7 查询空值 119
5.2.8 单表的进阶操作 120
5.3 聚合查询 126
5.3.1 COUNT()函数 126
5.3.2 SUM()函数 127
5.3.3 AVG()函数 128
5.3.4 MAX()函数 128
5.3.5 MIN()函数 129
5.3.6 分组统计 129
5.4 多表查询 131
5.4.1 多表设计与关系模型 132
5.4.2 多表查询的基本原理 132
5.4.3 内连接查询 133
5.4.4 外连接查询 133
5.4.5 使用别名简化查询 135
5.4.6 多表联合查询 135
5.4.7 多表查询中的排序与限制 137
5.4.8 多表查询中的条件筛选 138
5.5 子查询(嵌套查询) 138
5.5.1 子查询简介 139
5.5.2 子查询分类 139
5.5.3 子查询关键字 141
5.6 外键约束 143
5.6.1 认识外键约束 143
5.6.2 添加外键约束 143
5.6.3 关联表操作 144
5.6.4 删除外键约束 146
5.7 拓展练习 147
第6章
常用函数
6.1 MySQL函数简介 148
6.1.1 内置函数 148
6.1.2 自定义函数 149
6.2 数学函数 149
6.2.1 ABS()函数 150
6.2.2 FLOOR()函数 151
6.2.3 RAND()函数 152
6.2.4 PI()函数 153
6.2.5 TRUNCATE()函数 154
6.2.6 ROUND()函数 154
6.2.7 SQRT()函数 155
6.3 字符串函数 155
6.3.1 INSERT()函数 156
6.3.2 UPPER()函数与UCASE()函数 157
6.3.3 LEFT()函数与RIGHT()函数 158
6.3.4 LTRIM()函数与RTRIM()函数 158
6.3.5 SUBSTRING()函数 159
6.3.6 REPLACE()函数 160
6.3.7 CONCAT()函数 160
6.3.8 LOCATE()函数、POSITION()函数
与INSTR()函数 161
6.4 日期和时间函数 163
6.4.1 CURDATE()函数与
CURRENT_DATE()函数 163
6.4.2 CURTIME()函数与
CURRENT_TIME()函数 164
6.4.3 NOW()函数 165
6.4.4 DATEDIFF()函数 165
6.4.5 ADDDATE()函数 166
6.4.6 SUBDATE()函数 167
6.5 条件判断函数 167
6.5.1 IF()函数 168
6.5.2 IFNULL()函数 169
6.5.3 NULLIF()函数 169
6.5.4 CASE()函数 170
6.6 系统信息函数 172
6.6.1 获取MySQL信息的函数 172
6.6.2 获取用户信息的函数 172
6.6.3 获取字符集和排序规则的函数 173
6.7 加密函数 173
6.8 其他函数 174
6.9 拓展练习 174
第7章
视图与索引
7.1 MySQL视图 176
7.1.1 视图简介 176
7.1.2 视图的创建 178
7.1.3 查看视图及查询视图数据 179
7.1.4 修改视图 181
7.1.5 更新视图 182
7.1.6 删除视图 184
7.2 MySQL索引 184
7.2.1 索引简介 184
7.2.2 索引的存储 185
7.2.3 索引分类 186
7.2.4 创建索引 188
7.2.5 查看索引 190
7.2.6 删除索引 191
7.2.7 索引的优化 192
7.3 拓展练习 192
第8章
存储过程、触发器与事务
8.1 MySQL存储过程 194
8.1.1 创建及调用存储过程 194
8.1.2 查看存储过程 197
8.1.3 修改存储过程 199
8.1.4 删除存储过程 200
8.2 MySQL触发器 201
8.2.1 认识MySQL触发器 201
8.2.2 触发器的使用原则 203
8.2.3 创建触发器 204
8.2.4 查看触发器 204
8.2.5 使用触发器 206
8.2.6 删除触发器 208
8.3 MySQL事务 209
8.3.1 事务简介 209
8.3.2 事务的基本操作 210
8.3.3 事务的保存点 213
8.3.4 事务隔离级别 214
8.4 MySQL游标 216
8.4.1 认识游标 216
8.4.2 游标的常见操作 216
8.5 MySQL事件 220
8.5.1 认识事件 220
8.5.2 认识事件调度器 220
8.5.3 创建事件 221
8.5.4 修改事件 222
8.5.5 删除事件 223
8.6 MySQL流程控制语句 223
8.6.1 IF…THEN…ELSE条件判断语句 224
8.6.2 CASE条件多分支语句 224
8.6.3 WHILE循环语句 224
8.6.4 LOOP与LEAVE循环结构 225
8.6.5 REPEAT循环语句 225
8.7 MySQL存储引擎 225
8.8 拓展练习 226
第9章
安全控制与优化
9.1 MySQL权限表 228
9.1.1 权限表概述 228
9.1.2 常见权限表与字段解析 228
9.1.3 权限表的管理与注意事项 230
9.2 用户账号与权限管理 231
9.2.1 MySQL数据库用户账号管理 231
9.2.2 创建用户 231
9.2.3 查看用户 233
9.2.4 修改密码 235
9.2.5 修改用户 236
9.2.6 删除用户 236
9.2.7 数据库账户权限管理 237
9.2.8 授予及限制权限 238
9.2.9 撤销并限制权限 240
9.2.10 转移权限 242
9.3 访问控制 243
9.3.1 连接核实阶段 243
9.3.2 请求核实阶段 244
9.4 并发控制 245
9.4.1 并发控制概述 245
9.4.2 封锁 246
9.4.3 死锁和活锁 247
9.5 MySQL日志系统 249
9.5.1 日志概述与作用 249
9.5.2 错误日志 250
9.5.3 查询日志 251
9.5.4 慢查询日志 252
9.5.5 二进制日志 253
9.5.6 撤销日志 254
9.5.7 重做日志 255
9.6 MySQL性能优化 256
9.7 MySQL常用安全策略 256
9.8 拓展练习 256
第10章
备份与恢复
10.1 数据库备份与恢复概述 258
10.1.1 数据库备份的作用与重要性 258
10.1.2 常见的数据库备份类型 258
10.1.3 常见的数据库备份策略 259
10.2 逻辑备份及恢复 260
10.2.1 认识逻辑备份 260
10.2.2 mysqldump备份及恢复 260
10.3 物理备份及恢复 262
10.3.1 认识物理备份 262
10.3.2 MySQL的Data目录结构 263
10.3.3 冷备份 264
10.3.4 热备份 265
10.4 使用第三方工具进行MySQL的备份 266
10.4.1 备份数据库 266
10.4.2 恢复数据库 267
10.5 通过转储SQL文件功能备份数据库 267
10.5.1 启动转储SQL文件功能备份数据库 267
10.5.2 使用转储SQL文件功能恢复数据库 269
10.6 拓展练习 270
第11章
MySQL与人工智能
11.1 MySQL与人工智能的关系 271
11.2 AI在MySQL中的实际应用 271
11.2.1 智能数据表设计 272
11.2.2 智能生成数据记录 273
11.2.3 智能语句故障分析 274
11.2.4 智能语句优化 274
11.2.5 智能生成查询语句 275
11.2.6 智能语句分析 276
11.3 人工智能辅助MySQL学习 277
11.3.1 AI辅助学习MySQL基础知识 277
11.3.2 AI驱动的智能问答与技术支持 278
11.4 使用第三方编程工具结合AI助力MySQL开发 279
11.4.1 Visual Studio Code (VSCode)简介 279
11.4.2 通义灵码简介 279
11.4.3 通义灵码的使用 280
11.5 拓展练习 281
