数据库原理与应用

数据库原理与应用
作 者: 邓立国 邓淇文 苏畅 林庆发
出版社: 清华大学出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 暂缺
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  邓立国,东北大学计算机应用博士,广东工业大学教师。主要研究方向为数据挖掘、知识工程、大数据处理、云计算、分布式计算等。著有图书:《Python深度学习原理、算法与案例》《scikit-learn机器学习实战》《Python数据分析与挖掘实战》《Python大数据分析算法与实例》《Python机器学习算法与应用》《数据库原理与应用(SQL Server 2016版本)》。

内容简介

数据库技术是现代信息科学与技术领域的重要组成部分,是计算机数据处理与信息管理系统的基础。《数据库原理与应用:MySQL8版本》结合MySQL数据库,详细讲解数据库的原理和设计。《数据库原理与应用:MySQL8版本》配套PPT课件、习题与答案、教学大纲、数据库操作实验手册。《数据库原理与应用:MySQL8版本》分为4篇,共22章,内容包括数据库基础知识、关系数据库、关系数据库标准语言SQL、数据库安全、关系查询处理和查询优化、数据库恢复技术、并发控制、MySQL安装和配置、MySQL数据库基本操作、MySQL数据库中的存储引擎和数据类型、MySQL数据库表操作、MySQL索引与视图操作、MySQL触发器操作、MySQL数据操作、MySQL单表与多表数据查询操作、MySQL运算符与常用函数、MySQL存储过程与函数操作、MySQL事务与安全机制、MySQL日志管理与数据库维护、数据库设计、数据库编程、MySQL图书管理系统设计。《数据库原理与应用:MySQL8版本》内容翔实、知识结构合理、语言简洁流畅、案例丰富,适合希望从事数据库系统研究、开发和应用的研究人员和工程技术人员阅读,也可作为高等院校或高职高专院校计算机科学与技术、软件工程、信息技术等专业的数据库课程的教材。

图书目录

第1篇 基础理论篇

第 1 章 数据库基础知识 3

1.1 数据库系统概论 3

1.1.1 数据库系统的基本概念 3

1.1.2 数据库技术的产生与特点 4

1.2 数据模型 5

1.2.1 数据模型的组成要素 6

1.2.2 数据的概念模型 6

1.2.3 数据的逻辑模型 11

1.2.4 数据的物理模型 12

1.3 数据库系统模式与结构 12

1.3.1 数据库系统的三级模式结构 12

1.3.2 数据库系统的二级映像功能 13

1.4 数据库系统的组成 14

1.4.1 计算机硬件 14

1.4.2 计算机软件 14

1.4.3 数据库系统中的人员 14

第 2 章 关系数据库 16

2.1 数学中关系的概念 16

2.2 关系数据模型 18

2.2.1 关系数据结构 18

2.2.2 关系操作 19

2.3 数据库完整性 20

2.3.1 实体完整性 21

2.3.2 参照完整性 22

2.3.3 用户定义完整性 25

2.3.4 完整性约束命名子句 27

2.3.5 域中的完整性限制 28

2.3.6 断言 28

2.3.7 触发器 29

2.4 关系代数 33

2.4.1 传统的集合运算 34

2.4.2 专门的关系运算 35

2.5 关系模式和范式理论 40

2.5.1 关系模式与属性依赖 40

2.5.2 范式理论 42

2.5.3 数据依赖的公理系统 47

2.5.4 模式分解 51

第 3 章 关系数据库标准语言SQL 59

3.1 SQL语言概述 59

3.1.1 SQL的特点 59

3.1.2 SQL的基本概念 60

3.2 数据定义 61

3.2.1 模式的定义与删除 62

3.2.2 基本表的定义、删除与修改 63

3.2.3 索引的建立与删除 66

3.3 数据查询 68

3.3.1 单表查询 68

3.3.2 多表查询 80

3.4 数据更新 90

3.4.1 插入数据 90

3.4.2 修改数据 92

3.4.3 删除数据 93

3.5 视图 94

3.5.1 定义视图 94

3.5.2 查询视图 97

3.5.3 更新视图 98

3.5.4 视图的作用 100

第 4 章 数据库安全 102

4.1 数据库安全性概述 102

4.1.1 数据库的不安全因素 102

4.1.2 安全标准简介 103

4.2 数据库安全性控制 106

4.2.1 用户身份鉴别 107

4.2.2 存取控制 108

4.2.3 自主存取控制方法 109

4.2.4 授权:授予与收回 109

4.2.5 数据库角色 114

4.2.6 强制存取控制方法 115

4.3 视图机制 117

4.4 审计 117

4.4.1 数据库审计的目的 117

4.4.2 数据库审计的主要组成部分 118

4.4.3 数据库审计的主要类型 118

4.4.4 审计事件 119

第2篇 数据库系统篇

第 5 章 查询处理和查询优化 123

5.1 关系数据库系统的查询处理 123

5.1.1 查询处理步骤 123

5.1.2 实现查询操作的算法示例 125

5.2 关系数据库系统的查询优化 128

5.2.1 查询优化概述 128

5.2.2 查询优化示例 129

5.3 代数优化 131

5.3.1 关系代数表达式等价变换规则 131

5.3.2 查询树的启发式优化 133

5.4 物理优化 134

5.4.1 基于启发式规则的存取路径选择优化 135

5.4.2 基于代价估算的优化 135

5.5 查询计划的执行 137

第 6 章 数据库恢复技术 138

6.1 事务的基本概念 138

6.2 数据库恢复概述 139

6.3 故障的种类 140

6.4 恢复的实现技术 141

6.4.1 数据转储 142

6.4.2 登记日志文件 143

6.5 恢复策略 144

6.5.1 系统故障的恢复 144

6.5.2 介质故障的恢复 145

6.5.3 事务故障的恢复 145

6.6 具有检查点的恢复技术 146

6.7 数据库镜像 148

第 7 章 并发控制 149

7.1 并发控制概述 150

7.2 封锁 152

7.3 封锁协议 152

7.4 活锁和死锁 154

7.4.1 活锁 155

7.4.2 死锁 155

7.5 并发调度的可串行性 157

7.5.1 可串行化调度 157

7.5.2 冲突可串行化调度 158

7.6 两段锁协议 159

7.7 封锁的粒度 160

7.7.1 多粒度封锁 161

7.7.2 意向锁 162

7.8 其他并发控制机制 163

7.8.1 多版本并发控制 163

7.8.2 改进的多版本并发控制 164

第3篇 MySQL数据库操作、管理与应用篇

第 8 章 MySQL的安装和配置 169

8.1 MySQL概述 169

8.1.1 MySQL简介 169

8.1.2 MySQL的特点 170

8.1.3 MySQL 8.0新增的特点 171

8.2 下载和安装MySQL 172

8.2.1 下载MySQL 172

8.2.2 安装MySQL 173

8.3 MySQL服务管理 175

8.4 通过DOS窗口启动和关闭MySQL服务 177

8.5 使用MySQL Workbench客户端软件 178

8.6 MySQL常用图形化管理软件——SQLyog软件 179

8.7 MySQL命令行工具 181

第 9 章 MySQL的数据库基本操作 184

9.1 数据库及数据库对象 184

9.2 创建数据库 185

9.3 数据库相关操作 187

9.3.1 查看数据库 187

9.3.2 选择数据库 188

9.3.3 删除数据库 189

第 10 章 MySQL的存储引擎和数据类型 191

10.1 认识存储引擎 191

10.1.1 MySQL存储引擎 191

10.1.2 操作默认存储引擎 193

10.1.3 选择存储引擎 194

10.2 数据类型 195

10.2.1 整数类型 195

10.2.2 浮点数类型、定点数类型和位类型 197

10.2.3 日期和时间类型 199

10.2.4 字符串类型 200

第 11 章 MySQL的表操作 203

11.1 创建表 203

11.2 查看表结构 206

11.3 删除表 208

11.4 修改表 209

11.5 操作表的约束 216

第 12 章 MySQL的索引与视图操作 225

12.1 创建和查看索引 225

12.1.1 创建和查看普通索引 225

12.1.2 创建和查看唯一索引 228

12.1.3 创建和查看全文索引 231

12.1.4 创建和查看多列索引 234

12.2 删除索引 236

12.3 创建视图 237

12.4 查看视图 240

12.5 删除与修改视图 243

12.6 利用视图操作基本表 246

第 13 章 MySQL的触发器操作 248

13.1 创建触发器 248

13.2 查看触发器 252

13.3 删除触发器 253

第 14 章 MySQL的数据操作 255

14.1 插入数据记录 255

14.2 更新数据记录 261

14.3 删除数据记录 263

第 15 章 MySQL的单表与多表数据查询操作 265

15.1 简单数据记录查询 265

15.1.1 简单数据查询 266

15.1.2 避免重复的数据查询 267

15.1.3 实现数学四则运算的数据查询 268

15.1.4 设置显示格式的数据查询 269

15.2 条件数据记录查询 269

15.2.1 带关系运算符和逻辑运算符的条件数据查询 270

15.2.2 带BETWEEN AND关键字的范围查询 271

15.2.3 带IS NULL关键字的空值查询 272

15.2.4 带IN关键字的集合查询 274

15.2.5 带LIKE关键字的模糊查询 275

15.3 排序数据记录查询 278

15.4 限制数据记录查询数量 280

15.5 统计函数和分组数据记录查询 282

15.6 连接操作 290

15.6.1 自连接 290

15.6.2 等值连接 291

15.6.3 不等连接 292

15.6.4 外连接 293

15.7 合并查询数据记录 296

15.8 子查询 297

第 16 章 MySQL的运算符与常用函数 303

16.1 使用算术运算符 303

16.2 使用比较运算符 304

16.3 使用逻辑运算符 308

16.4 使用位运算符 310

16.5 使用字符串函数 312

16.6 使用数值函数 322

16.7 使用日期和时间函数 324

16.8 使用系统信息函数 329

第 17 章 MySQL的存储过程与函数操作 331

17.1 创建存储过程和函数 331

17.2 存储过程和函数的表达式 334

17.3 查看与修改存储过程和函数 341

17.4 删除存储过程和函数 345

第 18 章 MySQL的事务与安全机制 347

18.1 事务概述 347

18.2 MySQL事务控制语句 348

18.3 MySQL事务隔离级别 350

18.4 InnoDB锁机制 351

18.5 MySQL提供的权限 352

18.6 MySQL提供的用户机制 355

18.7 权限管理 363

18.7.1 对用户进行授权 363

18.7.2 查看用户拥有的权限 364

18.7.3 收回用户拥有的权限 364

第 19 章 MySQL的日志管理与数据库维护 366

19.1 MySQL支持的日志 366

19.2 操作二进制日志 367

19.3 操作错误日志 369

19.4 通用查询日志 370

19.5 慢查询日志 372

19.6 MySQL数据库维护 374

第4篇 设计与应用开发篇

第 20 章 数据库设计 385

20.1 数据库设计概述 385

20.1.1 数据库设计的特点 386

20.1.2 数据库设计的方法 387

20.1.3 数据库设计的阶段 388

20.1.4 数据库设计过程中的各级模式 390

20.2 需求分析 391

20.2.1 需求分析的任务 391

20.2.2 需求分析的方法 391

20.2.3 数据字典 392

20.3 概念结构设计 394

20.3.1 概念模型 394

20.3.2 扩展的E-R模型 395

20.3.3 UML 399

20.3.4 概念结构设计 400

20.4 逻辑结构设计 407

20.4.1 E-R图向关系模型转换 407

20.4.2 数据模型的优化 408

20.4.3 设计用户外模式 409

20.5 物理结构设计 410

20.5.1 数据库物理设计的内容和方法 410

20.5.2 关系模式存取方法的选择 411

20.5.3 确定数据库的物理结构 413

20.5.4 评价物理结构 413

20.6 数据库的实施和维护 414

20.6.1 数据的载入和应用程序的调试 414

20.6.2 数据库的试运行 414

20.6.3 数据库的运行和维护 415

第 21 章 数据库编程 417

21.1 嵌入式SQL 417

21.1.1 嵌入式SQL的处理过程 417

21.1.2 嵌入式SQL语句与主语言之间的通信 418

21.1.3 不用游标的SQL语句 421

21.1.4 使用游标的SQL语句 422

21.1.5 动态SQL 423

21.2 过程化SQL 424

21.2.1 过程化SQL的块结构 424

21.2.2 变量和常量的定义 425

21.2.3 流程控制 425

21.3 ODBC编程 427

21.3.1 ODBC概述 427

21.3.2 ODBC工作原理概述 427

21.3.3 ODBC API基础 429

21.3.4 ODBC的工作流程 430

21.4 OLE DB 434

21.5 JDBC编程 436

第 22 章 MySQL图书管理系统设计 437

22.1 系统概述 437

22.1.1 需求分析 437

22.1.2 功能分析 438

22.2 数据库设计 438

22.2.1 开发工具及技术选型 438

22.2.2 概念设计 439

22.2.3 逻辑设计 440

22.3 数据库实施 441