模块1 数据库基础 1
1.1 数据库概述 2
1.1.1 数据库的相关概念 2
1.1.2 数据库系统的组成 3
1.1.3 数据库系统的体系结构 5
1.2 数据模型概述 5
1.2.1 数据模型的概念 5
1.2.2 数据模型的组成要素 6
1.2.3 数据模型的应用层次 6
1.3 关系型数据库理论 11
1.3.1 关系数据模型的相关概念 11
1.3.2 关系型数据库概述 16
1.3.3 关系型数据库管理系统
概述 17
习题 20
模块2 MySQL数据库管理系统 23
2.1 MySQL概述 24
2.2 MySQL环境搭建 25
2.2.1 MySQL的下载 25
2.2.2 MySQL的安装与配置 27
2.2.3 MySQL的卸载 40
2.3 MySQL的工具 48
2.3.1 命令行工具 48
2.3.2 图形化管理工具 48
2.4 MySQL的编程接口 53
2.4.1 MySQL支持的API 53
2.4.2 如何选择API 54
习题 56
模块3 MySQL编程基础 58
3.1 SQL语言 59
3.1.1 SQL语言概述 59
3.1.2 SQL语言的功能 59
3.1.3 SQL语句 60
3.2 数据类型 61
3.2.1 字符串类型 61
3.2.2 数值类型 63
3.2.3 日期/时间类型 65
3.2.4 空间类型 65
3.2.5 JSON类型 66
3.3 常量和变量 67
3.3.1 常量 67
3.3.2 变量 67
3.4 表达式和运算符 69
3.4.1 表达式 69
3.4.2 运算符 69
3.5 系统内置函数 73
3.5.1 单行函数 74
3.5.2 聚合函数 82
习题 83
模块4 MySQL数据库操作 85
4.1 MySQL数据库和数据库对象 85
4.1.1 MySQL数据库 85
4.1.2 MySQL数据库对象和
数据库文件 86
4.1.3 MySQL的字符集和排序
规则 87
4.2 通过命令行工具创建和管理
数据库 88
4.2.1 使用MySQL Command
Line Client创建数据库 88
4.2.2 使用MySQL Command
Line Client管理数据库 90
4.3 通过图形化界面方式创建和
管理数据库 93
4.3.1 使用MySQL Workbench
创建数据库 93
4.3.2 使用MySQL Workbench
管理数据库 97
习题 99
模块5 MySQL数据表操作 100
5.1 通过命令行工具操作数据表 101
5.1.1 使用MySQL Command
Line Client创建数据表 101
5.1.2 使用MySQL Command
Line Client管理数据表 111
5.1.3 使用MySQL Command
Line Client管理数据 121
5.2 通过图形化界面方式操作
数据表 136
5.2.1 使用MySQL Workbench
创建数据表 136
5.2.2 使用MySQL Workbench
管理数据表 140
5.2.3 使用MySQL Workbench
管理数据 145
习题 149
模块6 MySQL数据查询 153
6.1 基本查询语句 154
6.2 无数据源查询 154
6.3 单表查询 156
6.3.1 简单查询 156
6.3.2 使用DISTINCT关键字
消除重复记录 160
6.3.3 使用AS关键字设置查询
结果列的别名 161
6.3.4 使用WHERE关键字限定
查询条件 161
6.3.5 使用聚合函数查询 172
6.3.6 使用GROUP BY关键字
对查询结果进行分组 176
6.3.7 使用ORDER BY关键字
对查询结果排序 178
6.3.8 使用LIMIT关键字限制
查询结果的数量 179
6.4 多表查询 180
6.4.1 连接查询 180
6.4.2 联合查询 187
6.5 嵌套查询 189
6.5.1 带IN关键字的子查询 189
6.5.2 带ALL关键字的子查询 190
6.5.3 带ANY关键字的子查询 190
6.5.4 带EXISTS关键字的
子查询 191
习题 191
模块7 MySQL的索引与视图 194
7.1 MySQL的索引 194
7.1.1 索引概述 194
7.1.2 索引操作 196
7.2 MySQL的视图 198
7.2.1 视图概述 198
7.2.2 视图操作 198
习题 201
模块8 MySQL程序设计 203
8.1 存储过程 204
8.1.1 存储过程概述 204
8.1.2 存储过程操作 204
8.2 存储函数 211
8.3 触发器 212
8.4 事件 216
8.4.1 事件概述 216
8.4.2 事件操作 216
8.5 流程控制语句 221
8.5.1 分支结构程序控制 221
8.5.2 循环结构程序控制 224
8.6 游标 228
习题 230
模块9 MySQL的事务 233
9.1 事务概述 234
9.2 事务控制 234
9.3 事务的并发控制 237
9.3.1 事务隔离级别 238
9.3.2 封锁机制 239
习题 241
模块10 MySQL安全管理 242
10.1 用户与权限管理 242
10.1.1 权限表 243
10.1.2 用户管理 244
10.1.3 权限管理 246
10.2 数据库备份与恢复 249
10.2.1 备份数据 250
10.2.2 恢复数据 252
10.2.3 表数据的导出与导入 252
习题 254
模块11 数据库设计 255
11.1 数据库设计概述 255
11.2 数据库设计过程 256
11.2.1 需求分析 257
11.2.2 概念设计 259
11.2.3 逻辑设计 263
11.2.4 物理设计 268
11.2.5 数据库实施 270
11.2.6 数据库的运行和维护 272
11.3 数据库设计实例——网络购物
系统 273
11.3.1 需求分析 273
11.3.2 概念设计 274
11.3.3 逻辑设计 275
11.3.4 物理设计 278
11.3.5 数据库的实施 278
11.3.6 数据库运行与维护 283
习题 283
习题参考答案 286
参考文献 288