项目实践篇 3
项目一 数据库技术基础 3
任务一 数据库系统概述 3
一、数据库的概念 3
二、数据管理技术的产生和发展 4
三、数据库系统的特点 6
任务二 数据模型 7
一、数据处理的三个世界 7
二、实体间的联系 7
三、数据模型的分类 8
四、关系模型的规范化 10
五、关系运算 12
任务三 数据库系统结构 13
一、数据库系统的三级模式结构 13
二、数据库系统的二级映像 14
任务四 数据库设计基础 14
一、设计原则 14
二、设计步骤 15
任务五 需求分析 16
一、需求分析的任务 16
二、需求分析的方法 16
三、数据字典 17
任务六 数据库的实施 19
一、数据的载入和应用程序的调试 19
二、数据库的试运行 20
项目实践 教务管理系统的数据库设计 20
小结 21
习题 21
项目二 MySQL概述 24
任务一 MySQL的功能及特点 24
一、MySQL的版本 24
二、MySQL的特性 25
任务二 Windows系统中安装和配置MySQL 27
一、安装MySQL 27
二、配置MySQL服务器 30
三、连接服务器 34
任务三 在Linux系统中安装与配置MySQL 36
一、Linux操作系统下的MySQL版本介绍 36
二、安装和配置MySQL的RPM包 37
三、安装和配置MySQL的源码包 40
任务四 MySQL管理工具 40
一、MySQL Workbench管理工具 41
二、 MySQL Administrator管理器工具 41
三、MySQL Query Browser数据查询工具 41
四、MySQL Migration Toolkit数据库迁移工具 42
项目实践MySQL的简单应用 42
小结 53
习题 53
项目三 创建与管理数据库 55
任务一 MySQL数据库简介 55
一、数据库的构成 55
二、数据库文件 56
三、数据库对象 56
四、数据库对象的标识符 57
任务二 管理数据库 57
一、创建数据库 58
二、查看已有的数据库 58
三、打开数据库 59
四、修改数据库 59
五、删除数据库 59
六、使用MySQL Workbench管理数据库 60
项目实践一 创建和管理教务管理系统数据库 64
任务三 数据备份与恢复 64
一、数据备份 65
二、数据恢复 68
项目实践二 备份教务管理系统数据库 69
小结 70
习题 70
项目四 创建与管理数据表 71
任务一 表概述 71
一、表的概念 71
二、表的类型 72
三、表的数据类型 73
四、表的设计 74
任务二 创建和管理表 74
一、创建表 74
二、查看表信息 77
三、修改表结构 77
四、删除表 79
任务三 表数据操作 79
一、添加数据 79
二、更新数据 81
三、删除数据 82
项目实践一 创建教务管理系统数据表 82
任务四 创建和管理索引 86
一、索引概述 86
二、创建索引 87
三、查看索引 89
四、删除索引 89
任务五 数据完整性 90
一、数据完整性的分类 90
二、数据完整性的实现 91
三、使用约束 91
项目实践二 教务管理系统中表的约束管理 95
小结 96
习题 96
项目五 数据查询与视图管理 101
任务一 简单查询 101
一、SELECT语句结构 101
二、SELECT子语句 102
三、WHERE子语句 104
四、ORDER BY子语句 108
五、GROUP BY子语句 109
六、HAVING子语句 110
项目实践一 简单查询的应用 110
任务二 连接查询 113
一、内连接 113
二、外连接 115
三、交叉连接 117
四、自连接 118
五、多表连接 118
项目实践二 连接查询的应用 119
任务三 子查询 121
一、IN子查询 122
二、比较运算符子查询 122
三、ANY或ALL子查询 123
四、EXISTS子查询 124
项目实践三 子查询的应用 125
任务四 联合查询 128
一、UNION操作符 128
二、UNION操作符和JOIN操作符的区别与联系 129
任务五 视图管理 130
一、视图概述 130
二、创建视图 131
三、更新视图 131
四、删除视图 132
项目实践四 教务管理系统中视图管理的应用 132
小结 133
习题 133
项目六 SQL语言基础 136
任务一 SQL基础 136
一、标识符 136
二、注释 136
三、数据类型 137
四、常量与变量 137
五、操作符 140
六、表达式 140
任务二 函数 141
一、系统函数 141
二、存储函数 147
任务三 流程控制语句 148
一、顺序控制语句 148
二、分支控制语句 149
三、循环控制语句 151
任务四 游标 151
一、游标的概念 152
二、游标的使用 152
项目实践 游标在教务管理系统中的应用 153
小结 154
习题 154
项目七 存储过程和触发器 157
任务一 存储过程 157
一、存储过程概述 157
二、创建存储过程 158
三、管理存储过程 160
四、存储过程中的异常处理 162
项目实践一 创建查询选课记录的存储过程 163
任务二 触发器 164
一、触发器概述 165
二、创建触发器 165
三、管理触发器 168
项目实践二 创建一个插入事件触发器 170
任务三 事件 170
一、创建事件 171
二、管理事件 172
小结 173
习题 173
项目八 事务与锁 175
任务一 事务 175
一、事务概述 175
二、事务操作 176
任务二 锁 179
一、并发问题 180
二、事务的隔离级别 180
三、MySQL中的锁定 181
项目实践 定义学生选课事务 184
小结 186
习题 186
项目九 数据库安全管理 188
任务一 MySQL的安全性 188
一、MySQL安全性概述 188
二、MySQL安全管理等级 188
任务二 用户管理 189
一、创建用户 189
二、修改用户名和密码 190
三、删除用户 190
任务三 权限管理 191
一、权限概述 191
二、授予权限 191
三、收回权限 192
四、查看权限 193
任务四 日志文件 194
一、二进制日志 194
二、错误日志 195
三、通用查询日志 196
四、慢查询日志 196
项目实践 创建数据管理员用户 197
小结 198
习题 198
项目十 数据库应用开发实例 199
任务一 系统分析 199
一、开发背景 199
二、需求分析 199
任务二 系统设计 200
一、系统功能设计 200
二、数据库设计 201
三、开发环境选择 209
任务三 系统实现 210
一、数据库访问设计 210
二、登录模块设计 210
三、图书借阅管理模块设计 211
四、系统主模块设计 212
小结 214
习题 215
拓展应用篇 218
项目十一 Java访问MySQL数据库 218
一、下载与安装MySQL Connector/J 218
二、Java连接MySQL数据库 219
三、Java操作MySQL数据库 220
四、Java备份和还原MySQL数据库 224
项目十二 PHP操作MySQL数据库 225
一、PHP访问MySQL数据库的一般步骤 225
二、连接数据库前的准备工作 225
三、PHP操作MySQL数据库所用的函数 227
四、实例一——使用insert语句动态添加用户信息 231
五、实例二——使用select语句查询数据信息 233
附录A MySQL常用语句 236
附录B 存储引擎 239