数据库原理与应用(MySQL版) / 高等学校计算机专业系列教材
¥59.00定价
作者: 何玉洁,岳清,张良,梁琦
出版时间:2025-02-18
出版社:机械工业出版社
- 机械工业出版社
- 9787111768937
- 1-1
- 547180
- 平装
- 2025-02-18
- 470
内容简介
本书从数据库基础理论、数据库实践、数据库设计、国产数据库等方面全面阐述了数据库技术的应用体系。全书理论阐述求精求易,理论与实践环环相扣,重点介绍国产数据库。
本书选用MySQL作为实践平台,附录中的上机实验可作为数据库课程的实验内容,便于读者学以致用。本书可作为普通高等院校计算机科学与技术及相关专业本科生数据库课程的教材,也可作为数据库初学者的入门读物。
本书选用MySQL作为实践平台,附录中的上机实验可作为数据库课程的实验内容,便于读者学以致用。本书可作为普通高等院校计算机科学与技术及相关专业本科生数据库课程的教材,也可作为数据库初学者的入门读物。
目录
目 录
前言
第1章 数据库概述1
1.1 概述1
1.2 一些基本概念1
1.2.1 数据1
1.2.2 数据库2
1.2.3 数据库管理系统2
1.2.4 数据库系统3
1.3 数据管理技术的发展3
1.3.1 文件管理4
1.3.2 数据库管理7
1.4 数据独立性10
1.5 数据库系统的组成10
本章小结11
习题12
第2章 数据模型与数据库结构14
2.1 数据和数据模型14
2.1.1 数据与信息14
2.1.2 数据模型15
2.2 概念层数据模型16
2.2.1 基本概念16
2.2.2 实体-联系模型17
2.3 组织层数据模型19
2.3.1 层次模型19
2.3.2 网状模型21
2.3.3 关系模型23
2.4 面向对象模型24
2.5 数据库体系结构24
2.5.1 模式的基本概念24
2.5.2 三级模式结构25
2.5.3 模式映像与数据独立性26
本章小结27
习题28
第3章 关系数据库30
3.1 关系模型30
3.1.1 数据结构30
3.1.2 数据操作30
3.1.3 数据完整性约束32
3.2 关系模型的基本术语与形式化定义32
3.2.1 基本术语33
3.2.2 形式化定义34
3.3 完整性约束37
3.3.1 实体完整性37
3.3.2 参照完整性38
3.3.3 用户定义的完整性40
3.4 关系代数40
3.4.1 传统的集合运算41
3.4.2 专门的关系运算43
3.4.3 关系代数示例49
本章小结51
习题52
第4章 SQL语言基础及基本表的定义55
4.1 SQL语言概述55
4.1.1 SQL语言的发展过程55
4.1.2 SQL语言的特点56
4.1.3 SQL语言的主要功能56
4.2 数据类型57
4.2.1 数值类型 57
4.2.2 字符串类型 58
4.2.3 日期时间类型60
4.3 基本表61
4.3.1 基本表的定义61
4.3.2 查看基本表结构66
4.3.3 基本表的维护67
本章小结72
习题73
第5章 数据操作语句75
5.1 数据查询语句的基本结构75
5.2 单表查询78
5.2.1 选择表中的若干列78
5.2.2 选择表中的若干元组80
5.2.3 对查询结果进行排序88
5.2.4 使用聚合函数统计数据89
5.2.5 对数据进行分组统计91
5.3 多表连接查询94
5.3.1 内连接94
5.3.2 自连接98
5.3.3 外连接99
5.4 限制查询结果集行数102
5.5 CASE表达式104
5.5.1 CASE表达式介绍104
5.5.2 CASE表达式应用示例106
5.6 子查询108
5.6.1 WHERE子句中的子查询108
5.6.2 FROM子句中的子查询116
5.6.3 SELECT查询列表中的子
查询117
5.7 复制表117
5.8 数据更改功能118
5.8.1 插入数据118
5.8.2 更新数据120
5.8.3 删除数据121
本章小结122
习题124
第6章 索引和视图127
6.1 索引127
6.1.1 索引的基本概念127
6.1.2 索引的存储结构及分类128
6.1.3 建立和删除索引133
6.2 视图135
6.2.1 视图的基本概念135
6.2.2 定义视图136
6.2.3 通过视图查询数据138
6.2.4 修改视图定义140
6.2.5 更新视图数据141
6.2.6 删除视图142
6.2.7 视图的作用142
本章小结143
习题145
第7章 SQL扩展编程147
7.1 SQL编程基础147
7.1.1 变量147
7.1.2 游标148
7.1.3 运算符148
7.1.4 分支结构149
7.1.5 循环结构150
7.2 存储过程151
7.2.1 存储过程的概念与作用151
7.2.2 定义与调用存储过程152
7.2.3 维护存储过程157
7.3 函数158
7.3.1 函数的概念与作用158
7.3.2 定义与调用函数158
7.3.3 维护函数159
7.4 触发器160
7.4.1 触发器的概念与作用160
7.4.2 定义触发器160
7.4.3 维护触发器162
本章小结163
习题164
第8章 关系规范化理论165
8.1 关系规范化的意义165
8.2 函数依赖166
8.3 函数依赖的推理规则168
8.3.1 Armstrong公理169
8.3.2 闭包及候选键求解方法170
8.3.3 极小函数依赖集174
8.4 范式175
8.4.1 第一范式176
8.4.2 第二范式177
8.4.3 第三范式179
8.4.4 Boyce-Codd范式180
8.4.5 规范化小结182
8.5 关系模式的分解准则182
本章小结185
习题186
第9章 数据库设计189
9.1 数据库设计概述189
9.1.1 数据库设计的特点190
9.1.2 数据库设计方法概述190
9.1.3 数据库设计的基本步骤191
9.2 数据库需求分析192
9.2.1 需求分析的任务193
9.2.2 需求分析的过程193
9.3 概念结构设计198
9.3.1 概念结构设计概述198
9.3.2 ER模型198
9.3.3 概念结构设计方法202
9.4 逻辑结构设计208
9.4.1 ER模型向关系模型的转换209
9.4.2 数据模型的优化211
9.4.3 设计外模式212
9.5 物理结构设计213
9.5.1 物理结构设计的内容和方法214
9.5.2 确定数据的存取方法214
9.5.3 确定数据的存储结构215
9.5.4 物理结构设计评价215
9.6 数据库行为设计216
9.6.1 功能分析与设计216
9.6.2 安全设计217
9.7 数据库实施与运维217
9.7.1 加载数据217
9.7.2 调试和运行应用程序218
9.7.3 数据库运行和维护218
9.8 数据库设计示例219
9.8.1 需求分析219
9.8.2 概念结构设计221
9.8.3 逻辑结构设计225
9.8.4 物理结构设计227
9.8.5 数据库行为设计227
本章小结227
习题228
第10章 事务与并发控制232
10.1 事务232
10.1.1 事务的基本概念232
10.1.2 事务的特征233
10.1.3 事务处理模型233
10.2 并发控制234
10.2.1 并发控制概述235
10.2.2 并发控制措施236
10.2.3 封锁协议237
10.2.4 活锁和死锁240
10.2.5 并发调度的可串行性242
10.2.6 两段锁协议243
本章小结244
习题246
第11章 安全管理248
11.1 安全管理概述248
11.1.1 安全管理目标248
11.1.2 安全控制模型249
11.2 数据库访问控制250
11.2.1 自主访问控制250
11.2.2 强制访问控制251
11.3 MySQL的安全管理251
11.3.1 登录管理252
11.3.2 用户管理254
11.3.3 权限管理255
11.3.4 角色管理257
本章小结260
习题261
第12章 数据库恢复技术263
12.1 恢复的基本概念263
12.2 数据库故障的种类264
12.3 数据库恢复的类型265
12.4 数据库恢复的检查点技术266
12.5 MySQL的备份和恢复方法 267
12.5.1 MySQL数据库备份268
12.5.2 MySQL数据库恢复269
本章小结270
习题271
第13章 国产数据库273
13.1 国产数据库研发的必要性273
13.2 国产数据库的起步274
13.2.1 20世纪70年代274
13.2.2 20世纪80年代274
13.2.3 20世纪90年代274
13.3 国产数据库的发展275
13.3.1 科技创新、开发自主的
数据库管理系统275
13.3.2 国产数据库市场的主要分类277
13.4 国产数据库展望279
本章小结280
附录 上机实验281
参考文献289
前言
第1章 数据库概述1
1.1 概述1
1.2 一些基本概念1
1.2.1 数据1
1.2.2 数据库2
1.2.3 数据库管理系统2
1.2.4 数据库系统3
1.3 数据管理技术的发展3
1.3.1 文件管理4
1.3.2 数据库管理7
1.4 数据独立性10
1.5 数据库系统的组成10
本章小结11
习题12
第2章 数据模型与数据库结构14
2.1 数据和数据模型14
2.1.1 数据与信息14
2.1.2 数据模型15
2.2 概念层数据模型16
2.2.1 基本概念16
2.2.2 实体-联系模型17
2.3 组织层数据模型19
2.3.1 层次模型19
2.3.2 网状模型21
2.3.3 关系模型23
2.4 面向对象模型24
2.5 数据库体系结构24
2.5.1 模式的基本概念24
2.5.2 三级模式结构25
2.5.3 模式映像与数据独立性26
本章小结27
习题28
第3章 关系数据库30
3.1 关系模型30
3.1.1 数据结构30
3.1.2 数据操作30
3.1.3 数据完整性约束32
3.2 关系模型的基本术语与形式化定义32
3.2.1 基本术语33
3.2.2 形式化定义34
3.3 完整性约束37
3.3.1 实体完整性37
3.3.2 参照完整性38
3.3.3 用户定义的完整性40
3.4 关系代数40
3.4.1 传统的集合运算41
3.4.2 专门的关系运算43
3.4.3 关系代数示例49
本章小结51
习题52
第4章 SQL语言基础及基本表的定义55
4.1 SQL语言概述55
4.1.1 SQL语言的发展过程55
4.1.2 SQL语言的特点56
4.1.3 SQL语言的主要功能56
4.2 数据类型57
4.2.1 数值类型 57
4.2.2 字符串类型 58
4.2.3 日期时间类型60
4.3 基本表61
4.3.1 基本表的定义61
4.3.2 查看基本表结构66
4.3.3 基本表的维护67
本章小结72
习题73
第5章 数据操作语句75
5.1 数据查询语句的基本结构75
5.2 单表查询78
5.2.1 选择表中的若干列78
5.2.2 选择表中的若干元组80
5.2.3 对查询结果进行排序88
5.2.4 使用聚合函数统计数据89
5.2.5 对数据进行分组统计91
5.3 多表连接查询94
5.3.1 内连接94
5.3.2 自连接98
5.3.3 外连接99
5.4 限制查询结果集行数102
5.5 CASE表达式104
5.5.1 CASE表达式介绍104
5.5.2 CASE表达式应用示例106
5.6 子查询108
5.6.1 WHERE子句中的子查询108
5.6.2 FROM子句中的子查询116
5.6.3 SELECT查询列表中的子
查询117
5.7 复制表117
5.8 数据更改功能118
5.8.1 插入数据118
5.8.2 更新数据120
5.8.3 删除数据121
本章小结122
习题124
第6章 索引和视图127
6.1 索引127
6.1.1 索引的基本概念127
6.1.2 索引的存储结构及分类128
6.1.3 建立和删除索引133
6.2 视图135
6.2.1 视图的基本概念135
6.2.2 定义视图136
6.2.3 通过视图查询数据138
6.2.4 修改视图定义140
6.2.5 更新视图数据141
6.2.6 删除视图142
6.2.7 视图的作用142
本章小结143
习题145
第7章 SQL扩展编程147
7.1 SQL编程基础147
7.1.1 变量147
7.1.2 游标148
7.1.3 运算符148
7.1.4 分支结构149
7.1.5 循环结构150
7.2 存储过程151
7.2.1 存储过程的概念与作用151
7.2.2 定义与调用存储过程152
7.2.3 维护存储过程157
7.3 函数158
7.3.1 函数的概念与作用158
7.3.2 定义与调用函数158
7.3.3 维护函数159
7.4 触发器160
7.4.1 触发器的概念与作用160
7.4.2 定义触发器160
7.4.3 维护触发器162
本章小结163
习题164
第8章 关系规范化理论165
8.1 关系规范化的意义165
8.2 函数依赖166
8.3 函数依赖的推理规则168
8.3.1 Armstrong公理169
8.3.2 闭包及候选键求解方法170
8.3.3 极小函数依赖集174
8.4 范式175
8.4.1 第一范式176
8.4.2 第二范式177
8.4.3 第三范式179
8.4.4 Boyce-Codd范式180
8.4.5 规范化小结182
8.5 关系模式的分解准则182
本章小结185
习题186
第9章 数据库设计189
9.1 数据库设计概述189
9.1.1 数据库设计的特点190
9.1.2 数据库设计方法概述190
9.1.3 数据库设计的基本步骤191
9.2 数据库需求分析192
9.2.1 需求分析的任务193
9.2.2 需求分析的过程193
9.3 概念结构设计198
9.3.1 概念结构设计概述198
9.3.2 ER模型198
9.3.3 概念结构设计方法202
9.4 逻辑结构设计208
9.4.1 ER模型向关系模型的转换209
9.4.2 数据模型的优化211
9.4.3 设计外模式212
9.5 物理结构设计213
9.5.1 物理结构设计的内容和方法214
9.5.2 确定数据的存取方法214
9.5.3 确定数据的存储结构215
9.5.4 物理结构设计评价215
9.6 数据库行为设计216
9.6.1 功能分析与设计216
9.6.2 安全设计217
9.7 数据库实施与运维217
9.7.1 加载数据217
9.7.2 调试和运行应用程序218
9.7.3 数据库运行和维护218
9.8 数据库设计示例219
9.8.1 需求分析219
9.8.2 概念结构设计221
9.8.3 逻辑结构设计225
9.8.4 物理结构设计227
9.8.5 数据库行为设计227
本章小结227
习题228
第10章 事务与并发控制232
10.1 事务232
10.1.1 事务的基本概念232
10.1.2 事务的特征233
10.1.3 事务处理模型233
10.2 并发控制234
10.2.1 并发控制概述235
10.2.2 并发控制措施236
10.2.3 封锁协议237
10.2.4 活锁和死锁240
10.2.5 并发调度的可串行性242
10.2.6 两段锁协议243
本章小结244
习题246
第11章 安全管理248
11.1 安全管理概述248
11.1.1 安全管理目标248
11.1.2 安全控制模型249
11.2 数据库访问控制250
11.2.1 自主访问控制250
11.2.2 强制访问控制251
11.3 MySQL的安全管理251
11.3.1 登录管理252
11.3.2 用户管理254
11.3.3 权限管理255
11.3.4 角色管理257
本章小结260
习题261
第12章 数据库恢复技术263
12.1 恢复的基本概念263
12.2 数据库故障的种类264
12.3 数据库恢复的类型265
12.4 数据库恢复的检查点技术266
12.5 MySQL的备份和恢复方法 267
12.5.1 MySQL数据库备份268
12.5.2 MySQL数据库恢复269
本章小结270
习题271
第13章 国产数据库273
13.1 国产数据库研发的必要性273
13.2 国产数据库的起步274
13.2.1 20世纪70年代274
13.2.2 20世纪80年代274
13.2.3 20世纪90年代274
13.3 国产数据库的发展275
13.3.1 科技创新、开发自主的
数据库管理系统275
13.3.2 国产数据库市场的主要分类277
13.4 国产数据库展望279
本章小结280
附录 上机实验281
参考文献289