第一部分 MySQL综述 1
第1章 数据库基础 1
1.1 数据库基本概念 1
1.1.1 数据库及其系统 1
1.1.2 数据模型 1
1.1.3 关系型数据库语言 3
1.2 数据库设计 4
1.2.1 概念模型 4
1.2.2 逻辑模型 6
1.2.3 物理模型 7
1.3 数据库应用系统 7
1.3.1 应用系统的数据接口 7
1.3.2 C/S架构的应用系统 9
1.3.3 B/S架构的应用系统 10
第2章 MySQL数据库的安装与运行 11
2.1 MySQL数据库 11
2.2 安装与运行 12
2.3 常用MySQL界面工具 18
第3章 MySQL数据库和表 19
3.1 MySQL数据库 19
3.1.1 创建数据库 19
3.1.2 修改数据库 20
3.1.3 删除数据库 21
3.2 MySQL表 21
3.2.1 创建表 21
3.2.2 修改表 25
3.2.3 删除表 27
3.3 数据类型 27
3.3.1 数据类型分类 28
3.3.2 数据类型属性 32
3.4 表记录的操作 33
3.4.1 插入记录 33
3.4.2 修改记录 36
3.4.3 删除记录 37
3.5 MySQL数据库信息显示 39
3.6 为查询准备数据 40
第4章 MySQL查询和视图 41
4.1 关系运算基础 41
4.1.1 选择(Selection)运算 41
4.1.2 投影(Projection)运算 42
4.1.3 连接(Join)运算 42
4.2 MySQL数据库查询 43
4.2.1 SELECT语句 43
4.2.2 选择输出项 44
4.2.3 FROM子句 49
4.2.4 WHERE子句 53
4.2.5 GROUP BY子句 60
4.2.6 HAVING子句 61
4.2.7 ORDER BY子句 62
4.2.8 LIMIT子句 63
4.2.9 UNION语句 64
4.2.10 HANDLER语句 65
4.3 MySQL视图 66
4.3.1 视图的概念 66
4.3.2 创建视图 67
4.3.3 查询视图 68
4.3.4 更新视图 69
4.3.5 修改视图 71
4.3.6 删除视图 71
第5章 MySQL索引与数据完整性约束 72
5.1 MySQL索引 72
5.1.1 索引及其作用 72
5.1.2 索引的分类 73
5.1.3 创建和删除索引 74
5.1.4 索引的利弊 76
5.2 MySQL数据完整性约束 77
5.2.1 主键约束 78
5.2.2 替代键约束 79
5.2.3 参照完整性约束 80
5.2.4 CHECK完整性约束 82
5.2.5 命名完整性约束 83
5.2.6 删除完整性约束 84
第6章 MySQL语言 85
6.1 MySQL语言简介 85
6.2 常量和变量 86
6.2.1 常量 86
6.2.2 变量 88
6.3 运算符与表达式 91
6.3.1 算术运算符 91
6.3.2 比较运算符 93
6.3.3 逻辑运算符 94
6.3.4 位运算符 95
6.3.5 运算符优先级 96
6.3.6 表达式 96
6.4 系统内置函数 97
6.4.1 数学函数 97
6.4.2 聚合函数 99
6.4.3 字符串函数 99
6.4.4 日期和时间函数 101
6.4.5 加密函数 103
6.4.6 控制流函数 104
6.4.7 格式化函数 105
6.4.8 类型转换函数 106
6.4.9 系统信息函数 107
第7章 MySQL过程式数据库对象 109
7.1 存储过程 109
7.1.1 创建存储过程 109
7.1.2 存储过程体 111
7.1.3 存储过程的调用、删除和修改 118
7.2 存储函数 121
7.2.1 创建存储函数 121
7.2.2 存储函数的调用、删除和修改 122
7.3 触发器 123
7.4 事件 126
7.4.1 创建事件 126
7.4.2 修改和删除事件 128
第8章 MySQL数据库备份与恢复 129
8.1 基本概念 129
8.2 常用的备份与恢复方法 130
8.2.1 使用SQL语句 130
8.2.2 使用客户端工具 132
8.2.3 直接复制 134
8.3 日志文件 135
8.3.1 启用日志 135
8.3.2 用mysqlbinlog处理日志 135
第9章 MySQL安全管理 137
9.1 用户管理 137
9.1.1 添加、删除用户 137
9.1.2 修改用户名、密码 138
9.2 权限控制 139
9.2.1 授予权限 139
9.2.2 权限转移和限制 142
9.2.3 权限回收 144
9.3 表维护语句 144
9.3.1 ANALYZE TABLE语句 144
9.3.2 CHECK TABLE语句 145
9.3.3 CHECKSUM TABLE语句 145
9.3.4 OPTIMIZE TABLE语句 146
9.3.5 REPAIR TABLE语句 146
第10章 MySQL多用户事务管理 147
10.1 事务管理 147
10.1.1 事务的概念 147
10.1.2 ACID属性 147
10.1.3 事务处理 149
10.1.4 事务隔离级 150
10.2 多用户访问 152
10.2.1 锁定的级别 152
10.2.2 锁定与解锁 153
10.2.3 并发访问的问题 153
第二部分 MySQL习题 155
第1章 数据库基础 155
第2章 MySQL数据库的安装与运行 156
第3章 MySQL数据库和表 156
第4章 MySQL查询和视图 158
第5章 MySQL索引与数据完整性约束 158
第6章 MySQL语言 159
第7章 MySQL过程式数据库对象 160
第8章 MySQL数据库备份与恢复 161
第9章 MySQL安全管理 161
第10章 MySQL多用户事务管理 161
第三部分 MySQL实验 162
实验1 MySQL的使用 162
实验2 创建数据库和表 164
实验3 表数据插入、修改和删除 166
实验4 数据库的查询和视图 169
实验5 索引和数据完整性 176
实验6 MySQL语言结构 178
实验7 过程式数据库对象的使用 181
实验8 备份与恢复 184
实验9 数据库的安全性 185
第四部分 MySQL应用实习 187
实习0 创建实习数据库 187
实习1 PHP/MySQL学生成绩管理系统 194
实习2 Java EE /MySQL学生成绩管理系统 211
实习3 Visual C# /MySQL学生成绩管理系统 241
实习4 ASP.NET (C#) /MySQL学生成绩管理系统 254
实习5 VC++ 6.0/MySQL学生成绩管理系统 278
实习6 VB 6.0/MySQL学生成绩管理系统 306
第五部分 附录 320
附录A 学生成绩数据库(库名为xscj)表结构样本数据 320
附录B Navicat操作 324
附录C phpMyAdmin基本操作 329