目录
第1章 理解数据库 1
1.1 什么是数据 2
1.1.1 信息和数据 2
1.1.2 数据处理 2
1.2 数据描述 3
1.2.1 现实世界 3
1.2.2 信息世界 3
1.2.3 数据世界 5
1.3 数据模型 6
1.3.1 数据模型分类 6
1.3.2 概念模型的表示方法 6
1.3.3 数据模型的要素和种类 7
1.3.4 关系模型 8
1.3.5 关系的完整性 10
1.4 关系代数 12
1.4.1 传统的集合运算 13
1.4.2 专门的关系运算 14
1.5 数据库系统的组成和结构 19
1.5.1 数据库相关概念 19
1.5.2 数据库系统的体系结构 21
习题 23
第2章 设计数据库 26
2.1 数据库设计概述 27
2.2 需求分析 28
2.2.1 需求分析的任务及目标 29
2.2.2 需求分析的方法 29
2.3 概念结构设计 30
2.3.1 概念结构设计的方法和步骤 30
2.3.2 局部E-R模型设计 31
2.3.3 全局E-R模型设计 33
2.4 逻辑结构设计 36
2.4.1 初始关系模式设计 36
2.4.2 关系模式的规范化 40
2.5 数据库的物理设计 45
2.5.1 关系模式存取方法选择 46
2.5.2 确定数据库的存储结构 47
2.6 任务实现 50
2.6.1 收集数据 50
2.6.2 创建E-R模型 51
2.6.3 设计关系模式 53
2.6.4 规范化 54
2.7 课堂实践:设计数据库 55
2.8 课外拓展 56
习题 56
第3章 创建数据库 61
3.1 MYSQL概述 62
3.1.1 MySQL简介 62
3.1.2 MySQL版本信息 63
3.1.3 MySQL工具 64
3.2 MYSQL的安装与配置 65
3.2.1 Windows平台下安装与配置MySQL 5.5 65
3.2.2 启动服务并登录MySQL 5.5 74
3.2.3 更改MySQL 5.5的配置 78
3.2.4 MySQL常用图形化管理工具 81
3.2.5 Linux平台下安装与配置MySQL 5.5 83
3.3 数据库的创建和删除 88
3.3.1 认识SQL语言 88
3.3.2 MySQL数据库简介 89
3.3.3 创建数据库 90
3.3.4 打开数据库 91
3.3.5 删除数据库 92
3.3.6 MySQL数据库的存储引擎 92
3.4 课堂实践:创建和删除数据库 95
3.5 课外拓展 96
习题 96
第4章 数据库的基本应用 97
4.1 管理表 99
4.1.1 表的概述 99
4.1.2 MySQL数据类型 101
4.1.3 列的其他属性 103
4.1.4 设计学生信息管理数据库的表结构 103
4.1.5 创建表 105
4.1.6 维护表 110
4.2 数据查询 116
4.2.1 单表无条件查询 118
4.2.2 单表有条件查询 121
4.2.3 聚集函数的使用 127
4.2.4 分组与排序 128
4.2.5 多表连接查询 130
4.2.6 嵌套查询 133
4.2.7 集合查询 137
4.3 数据查询任务实现 137
4.3.1 学生信息浏览子系统 137
4.3.2 学生信息查询子系统 139
4.3.3 学生信息统计子系统 139
4.4 数据更新 140
4.4.1 数据记录的插入 140
4.4.2 数据记录的修改 142
4.4.3 数据记录的删除 143
4.5 数据更新任务实现 143
4.5.1 学生基本信息的维护 143
4.5.2 毕业学生信息导出 144
4.6 课堂实践 145
4.6.1 管理表 145
4.6.2 简单查询 147
4.6.3 连接查询 149
4.6.4 嵌套查询 149
4.6.5 数据更新 150
4.7 课外拓展 151
习题 159
第5章 数据库的高级应用 166
5.1 索引 167
5.1.1 索引概述 167
5.1.2 索引的类型 168
5.1.3 索引的设计原则 168
5.1.4 创建索引 169
5.1.5 删除索引 171
5.2 视图 172
5.2.1 视图概述 172
5.2.2 视图的创建 172
5.2.3 视图的使用 176
5.2.4 视图的修改 177
5.2.5 视图的删除 177
5.3 SQL编程基础 178
5.3.1 SQL语言基础 178
5.3.2 MySQL常用函数 189
5.3.3 游标 191
5.4 存储过程和函数 192
5.4.1 存储过程和函数概述 193
5.4.2 创建存储过程和函数 193
5.4.3 管理存储过程和函数 198
5.5 触发器 201
5.5.1 触发器概述 201
5.5.2 创建触发器 201
5.5.3 管理触发器 204
5.6 事务 206
5.6.1 事务概述 206
5.6.2 事务的ACID特性 206
5.6.3 事务的定义 207
5.7 锁 209
5.7.1 并发操作引起的问题 210
5.7.2 事务隔离级别 212
5.7.3 MySQL的锁定机制 213
5.7.4 分析InnoDB行锁争用情况 214
5.7.5 死锁的处理 215
5.8 课堂实践 215
5.8.1 索引 215
5.8.2 视图 217
5.8.3 SQL语言基础 218
5.8.4 存储过程和函数 218
5.8.5 触发器 220
5.8.6 游标及事务的使用 220
5.9 课外拓展 221
习题 224
第6章 MySQL数据库高级管理 227
6.1 MYSQL的权限系统 228
6.1.1 权限表 228
6.1.2 MySQL权限系统的工作原理 231
6.1.3 账户管理 233
6.1.4 权限管理 238
6.2 MYSQL的数据备份和恢复 243
6.2.1 数据备份和恢复 243
6.2.2 数据备份的方法 245
6.2.3 数据恢复的方法 248
6.2.4 数据库迁移 250
6.2.5 表的导入与导出 250
6.3 MYSQL日志 259
6.3.1 MySQL日志简介 260
6.3.2 二进制日志 260
6.3.3 错误日志 263
6.3.4 通用查询日志 264
6.3.5 慢查询日志 264
6.4 课堂实践 265
6.4.1 账户管理与权限管理 265
6.4.2 数据库的备份与恢复 266
6.4.3 MySQL日志的综合管理 267
6.5 课外拓展 268
习题 269
参考文献 270 (展开)