第1章 数据库系统基础知识 1
1.1 数据库系统的概述 1
1.1.1 数据库系统的基本概念 1
1.1.2 计算机数据管理技术的产生和发展 4
1.1.3 数据库系统的特点 5
1.1.4 数据库系统的组成 7
1.2 数据模型 8
1.2.1 概念模型 9
1.2.2 数据模型的要素 11
1.2.3 基本数据模型 12
1.3 数据库系统结构 14
1.3.1 数据库系统的三级模式结构 14
1.3.2 数据库的二级映射功能与数据独立性 15
1.3.3 C/S与B/S结构 16
1.4 本章小结 17
1.5 习题 17
第2章 关系数据库系统 18
2.1 关系模型的数据结构 18
2.2 关系完整性约束 20
2.2.1 域完整性 20
2.2.2 实体完整性 20
2.2.3 参照完整性 21
2.2.4 用户定义的完整性 23
2.3 关系操作 23
2.4 关系代数 24
2.4.1 关系定义 24
2.4.2 关系运算 26
2.5 本章小结 31
2.6 习题 31
第3章 MySQL安装与使用 32
3.1 MySQL简介 32
3.2 MySQL服务器与端口 34
3.2.1 MySQL服务器 34
3.2.2 端口号 34
3.3 MySQL的安装 34
3.4 启动和停止MySQL服务器 46
3.4.1 通过系统服务管理器启动、停止MySQL服务器 46
3.4.2 在命令提示符下启动、停止MySQL服务器 46
3.5 连接和断开MySQL服务器 47
3.6 基于客户端工具Navicat操作MySQL 50
3.6.1 下载与安装 51
3.6.2 界面操作使用 51
3.6.3 在Navicat中运行SQL语句 55
3.7 本章小结 56
3.8 习题 56
第4章 使用SQL管理数据库和表 57
4.1 SQL的基本知识特点 57
4.2 数据库管理 58
4.3 SQL的数据表定义功能 60
4.3.1 常见的数据类型 60
4.3.2 用SQL定义数据库表 64
4.4 SQL的数据操纵功能 67
4.4.1 插入数据记录 67
4.4.2 修改数据记录 68
4.4.3 删除数据记录 69
4.4.4 使用TRUNCATE清空表数据 70
4.5 SQL的数据查询功能 70
4.5.1 查询语句SELECT的基本结构 70
4.5.2 单表查询 71
4.5.3 连接查询 83
4.5.4 嵌套查询 89
4.6 jxgl数据库表 92
4.7 本章小结 94
4.8 习题 94
第5章 视图和索引 96
5.1 视图概述 96
5.1.1 视图的优势 97
5.1.2 视图的工作机制 97
5.2 视图定义和管理 97
5.2.1 创建视图 97
5.2.2 删除视图 99
5.2.3 查看视图定义 99
5.2.4 修改视图定义 100
5.3 更新视图数据 101
5.4 对视图的进一步说明 102
5.5 索引概述 102
5.5.1 索引的分类 104
5.5.2 索引的定义和管理 105
5.5.3 设计原则和注意事项 109
5.6 本章小结 111
5.7 习题 111
第6章 数据完整性约束和表维护语句 112
6.1 数据完整性约束 112
6.1.1 定义数据完整性 112
6.1.2 命名完整性约束 117
6.1.3 更新完整性约束 118
6.2 表维护语句 118
6.3 本章小结 121
6.4 习题 121
第7章 触发器与事件 122
7.1 触发器的概念及管理 122
7.1.1 触发器的概念 122
7.1.2 创建触发器 122
7.1.3 删除触发器 124
7.1.4 使用触发器 124
7.2 事件的概念与管理 126
7.2.1 事件的概念 126
7.2.2 创建事件 127
7.2.3 修改事件 128
7.2.4 删除事件 128
7.3 本章小结 128
7.4 习题 129
第8章 存储过程与存储函数 130
8.1 存储过程 130
8.1.1 创建存储过程 130
8.1.2 存储过程体 132
8.1.3 调用存储过程 136
8.1.4 修改存储过程 137
8.1.5 删除存储过程 137
8.2 存储函数 138
8.2.1 创建存储函数 138
8.2.2 调用存储函数 139
8.2.3 删除存储函数 139
8.3 本章小结 140
8.4 习题 140
第9章 访问控制与安全管理 141
9.1 用户账号管理 141
9.1.1 创建用户账号 141
9.1.2 删除用户 142
9.1.3 修改用户账号 143
9.1.4 修改用户口令 143
9.2 账户权限管理 144
9.2.1 权限的授予 144
9.2.2 权限的转移与限制 148
9.2.3 权限的撤销 149
9.3 本章小结 149
9.4 习题 150
第10章 事务与MySQL的多用户并发控制 151
10.1 事务 151
10.1.1 事务的概念 151
10.1.2 事务的ACID特性 152
10.1.3 MySQL事务控制语句 154
10.1.4 事务的隔离性级别 154
10.2 MySQL的并发控制 156
10.2.1 并发概述 156
10.2.2 锁的概述 157
10.2.3 MyISAM表的表级锁 158
10.2.4 InnoDB表的行级锁 159
10.2.5 死锁 160
10.3 本章小结 161
10.4 习题 161
第11章 MySQL数据库备份与还原 162
11.1 备份与还原概述 162
11.2 通过文件备份和还原 163
11.3 通过命令MYSQLDUMP备份还原 164
11.3.1 备份 164
11.3.2 还原 166
11.4 表的导入和导出 167
11.5 本章小结 170
11.6 习题 170
第12章 数据库设计方法 171
12.1 数据库设计概述 171
12.1.1 数据库设计的内容 171
12.1.2 数据库设计的步骤 171
12.2 系统需求分析 173
12.2.1 需求分析的任务 173
12.2.2 需求分析的方法 174
12.2.3 数据流图 175
12.2.4 数据字典 176
12.3 概念结构设计 178
12.3.1 概念结构设计的必要性 179
12.3.2 概念模型的特点 179
12.3.3 概念结构设计的方法与步骤 179
12.3.4 数据抽象和局部E-R模型设计 181
12.3.5 全局E-R模型设计 183
12.4 逻辑结构设计 184
12.4.1 关系模式规范化 186
12.4.2 模式评价与改进 188
12.5 物理结构设计 189
12.6 数据库实施 189
12.6.1 建立实际数据库结构 189
12.6.2 数据导入数据库 189
12.6.3 应用程序编码与调试 190
12.6.4 数据库试运行 190
12.6.5 整理文档 191
12.7 数据库运行和维护 191
12.7.1 维护数据库的安全性与完整性 191
12.7.2 监测并改善数据库性能 191
12.7.3 重新组织和构造数据库 191
12.8 本章小结 191
12.9 习题 192
第13章 PHP的MySQL数据库编程 193
13.1 PHP简介 193
13.2 PHP编程基础 194
13.3 使用PHP进行MySQL数据库编程 195
13.3.1 编程步骤 195
13.3.2 建立与MySQL数据库服务器的连接 196
13.3.3 选择数据库 198
13.3.4 执行数据库操作 199
13.3.5 关闭与数据库服务器的连接 207
13.4 本章小结 208
13.5 习题 208
第14章 数据库应用系统开发实例 209
14.1 需求描述 209
14.2 系统分析与设计 209
14.3 数据库设计与实现 211
14.4 系统实现 211
14.5 本章小结 215
14.6 习题 215
第15章 从关系型到非关系型数据库 217
15.1 NoSQL概述 217
15.2 NoSQL数据库的优势比较 217
15.2.1 关系型数据库的优势 217
15.2.2 关系型数据库的劣势 218
15.2.3 NoSQL数据库的优势 219
15.3 NoSQL数据库的类型 219
15.3.1 键值存储 220
15.3.2 面向文档的数据库 221
15.3.3 面向列的数据库 221
15.4 NoSQL数据库选用原则 222
15.5 NoSQL的CAP理论 222
15.5.1 NoSQL系统是分布式系统 222
15.5.2 CAP理论阐述 223
15.6 MongoDB概述 224
15.6.1 选用MongoDB原因 224
15.6.2 MongoDB的优势和不足 225
15.6.3 基本概念 227
15.7 MongoDB数据库安装配置 227
15.7.1 下载 227
15.7.2 配置 228
15.7.3 启动数据库 230
15.7.4 MongoVUE图形化管理工具 234
15.7.5 MongoVUE的安装启动 234
15.7.6 借助MongoVUE工具对数据库操作 239
15.8 本章小结 243
15.9 习题 243
附录 实验 244
实验1 概念模型(E-R图)绘制 244
实验2 关系的完整性理解与应用 245
实验3 MySQL数据库数据表的创建与修改管理 246
实验4 MySQL数据库表的数据插入、修改、删除操作 248
实验5 MySQL数据库表数据的查询操作实验 249
实验6 MySQL数据库索引创建与管理操作 250
实验7 MySQL数据库视图创建与管理 251
实验8 MySQL数据库存储过程与函数的创建管理 252
实验9 MySQL数据库触发器创建与管理 254
实验10 MySQL数据库的安全机制管理 255
实验11 MySQL数据库的备份与恢复 255
实验12 MySQL日志管理 256
实验13 MySQL性能优化 257
实验14 使用PHP访问MySQL数据库 258
实验15 数据库设计 259
参考文献 261