导语

内容提要

本书共19章,全面地讲述了数据库技术的基本原理和应用。主要内容包括:数据库概述、信息与数据模型、关系代数与关系数据库理论、数据库设计方法、MySQL的安装与使用、MySQL存储引擎与数据库操作管理、MySQL表定义与完整性约束控制、MySQL数据操作管理、MySQL索引、MySQL视图、MySQL存储过程与函数、MySQL触发器与事件调度器、MySQL权限管理、事务与MySQL的多用户并发控制、MySQL数据库备份与还原、MySQL日志管理、分布式数据库与MySQL的应用、MySQL在Web开发中的应用、非关系型数据库——NoSQL等内容。

本书以MySQL为背景介绍了数据库技术的实现,使读者可以充分利用MySQL平台深刻理解数据库技术的原理,达到理论和实践紧密结合的目的。同时解决了读者安装上机数据库管理软件中的操作兼容性(32和64位计算机、Windows、Linux和MAC操作等)问题。

本书内容循序渐进,深入浅出,概念清晰,条理性强,每一章节都给出了相应的实例,为缓解读者初期动手的茫然与困惑,本书在每章专门设置了实验任务。

本书可作为本科相关“数据库原理及应用”课程的配套教材,同时也可以供参加数据库类考试的人员、数据库应用开发设计人员、工程技术人员及其他相关人员参阅。对于非计算机的本科学生,如果希望学到关键、实用的数据库技术,也可将本书作为教材。

目录

第1章  数据库系统概述

1.1  数据与数据管理技术

1.1.1  数据库系统的基本概念

1.1.2  数据管理技术的发展

1.2  数据库系统的特点及组成

1.2.1  数据库系统的特点

1.2.2  数据库系统的组成

1.3  数据库系统结构

1.3.1  三级模式结构

1.3.2  数据库系统体系结构

1.4  知识点小结

1.5  思考与练习

第2章  信息与数据模型

2.1  信息的三种世界及描述

2.2  数据模型

2.2.1  数据模型的概念

2.2.2  数据处理三层抽象描述

2.2.3  数据模型的要素

2.3.4  数据模型与数据模式的区别

2.3  概念模型

2.3.1  基本概念

2.3.2  E-R模型

2.4  逻辑模型

2.4.1  层次模型

2.4.2  网状模型

2.4.3  关系模型

2.4.4  面向对象模型

2.5  概念模型向逻辑模型的转换

2.6  关系模型

2.6.1  关系数据结构

2.6.2  关系操作

2.6.3  关系的完整性

2.7  知识点小结

2.8  思考与练习

第3章  关系代数与关系数据库理论

3.1  关系代数及其运算

3.1.1  关系的数学定义

3.1.2  关系代数概述

3.1.3  传统的集合运算

3.1.4  专门的关系运算

3.2  关系演算

3.2.1  元组关系演算

3.2.2  域关系演算

3.3  关系代数表达式的优化

3.4  关系数据库理论

3.4.1  问题的提出

3.4.2  函数依赖

3.4.3  关系模式的范式及规范化

3.5  关系模式的分解

3.6  知识点小结

3.7  思考与练习

第4章  数据库设计方法

4.1  数据库设计概述

4.1.1  数据库设计的内容

4.1.2  数据库设计的特点

4.1.3  数据库设计方法的分类

4.1.4  数据库设计的阶段

4.2  需求分析

4.2.1  需求描述与分析

4.2.2  需求分析分类

4.2.3  需求分析的内容、方法和步骤

4.2.4  数据字典

4.3  概念结构设计

4.3.1  概念结构设计的必要性及要求

4.3.2  概念结构设计的方法与步骤

4.3.3  采用E-R模型设计概念结构的方法

4.4  逻辑结构设计

4.4.1  E-R图向关系模型的转换

4.4.2  关系模式规范化

4.4.3  模式评价与改进

4.5  物理结构设计

4.5.1  物理结构设计的内容和方法

4.5.2  评价物理结构

4.6  数据库行为设计

4.7  数据库实施

4.8  数据库的运行与维护

4.9  知识点小结

4.10  思考与练习

第5章  MySQL的安装与使用

5.1  MySQL简介

5.2  MySQL工作流程

5.3  MySQL构成

5.4  MySQL服务器与端口号

5.5  MySQL的安装和使用

5.5.1  MySQL的下载与安装

5.5.2  启动和停止MySQL服务器

5.5.3  连接和断开MySQL服务器

5.5.4  卸载MySQL

5.6  Navicat的安装与使用

5.6.1  下载与安装

5.6.2  Navicat的使用

5.6.3  在Navicat中运行SQL语句

5.7  知识点小结

5.8  思考与练习

第6章  MySQL存储引擎与数据库操作管理

6.1  存储引擎

6.1.1  概述

6.1.2  InnoDB存储引擎

6.1.3  MyISAM存储引擎

6.1.4  MEMORY存储引擎

6.1.5  MERGE存储引擎

6.1.6  其他存储引擎

6.1.7  存储引擎的选择

6.2  字符集

6.2.1  概述

6.2.2  MySQL支持的字符集

6.2.3  MySQL字符集的选择

6.2.4  MySQL字符集的设置

6.3  MySQL数据库操作管理

6.3.1  创建数据库

6.3.2  修改数据库名称

6.3.3  删除数据库

6.4  知识点小结

6.5  思考与练习

第7章  MySQL表定义与完整性约束控制

7.1  表的基本概念

7.2  数据类型

7.2.1  数值类型

7.2.2  日期时间类型

7.2.3  字符串类型

7.2.4  复合类型

7.2.5  二进制类型

7.2.6  选择合适的数据类型

7.3  运算符

7.3.1  算术运算符

7.3.2  比较运算符

7.3.3  逻辑运算符

7.3.4  位运算符

7.4  数据表的操作

7.4.1  创建数据表

7.4.2  查看数据表结构

7.4.3  修改数据表

7.4.4  复制数据表

7.4.5  删除数据表

7.4.6  表管理中的注意事项

7.5  MySQL约束控制

7.5.1  数据完整性约束

7.5.2  字段的约束

7.5.3  删除约束

7.6  知识点小结

7.7  思考与练习

第8章  MySQL数据操作管理

8.1  插入数据

8.1.1  为表的所有字段插入数据

8.1.2  为表的指定字段插入数据

8.1.3  同时插入多条记录

8.1.4  从目标表中插入值

8.1.5  REPLACE语句

8.2  修改数据

8.3  删除数据

8.3.1  使用DELETE删除表数据

8.3.2  使用TRUNCATE清空表数据

8.4  单表查询

8.4.1  SELECT语法

8.4.2  简单查询

8.4.3  条件查询

8.4.4  查询

8.5  多表查询

8.5.1  内连接查询

8.5.2  外连接查询

8.5.3  子查询

8.6  知识点小结

8.7  思考与练习

第9章  MySQL索引

9.1  索引

9.1.1  索引概述

9.1.2  索引的作用

9.1.3  索引的分类

9.2  索引的定义和管理

9.2.1  创建索引

9.2.2  查看索引

9.2.3  删除索引

9.3  设计原则和注意事项

9.4  知识点小结

9.5  思考与练习

第10章  MySQL视图

10.1  视图

10.1.1  视图概述

10.1.2  视图的优势

10.1.3  视图的工作机制

10.2  视图定义和管理

10.2.1  创建与使用视图

10.2.2  删除视图

10.2.3  查看视图定义

10.2.4  修改视图定义

10.3  更新视图数据

10.4  对视图的进一步说明

10.5  知识点小结

10.6  思考与练习

第11章  MySQL存储过程与函数

11.1  存储过程与函数简介

11.1.1  概念

11.1.2  存储过程和函数区别

11.2  存储过程与函数操作

11.2.1  创建和使用存储过程或函数

11.2.2  变量

11.2.3  定义条件和处理

11.2.4  游标的使用

11.2.5  流程的控制

11.2.6  查看存储过程或函数

11.2.7  删除存储过程或函数

11.3  函数

11.3.1  数学函数

11.3.2  字符串函数

11.3.3  日期和时间函数

11.3.4  信息函数

11.3.5  加密函数

11.3.6  控制流函数

11.4  知识点小结

11.5  思考与练习

第12章  MySQL触发器与事件调度器

12.1  触发器

12.1.1  概念

12.1.2  创建使用触发器

12.1.3  查看触发器

12.1.4  删除触发器

12.1.5  对触发器的进一步说明

12.2  事件

12.2.1  事件的概念

12.2.2  创建事件

12.2.3  修改事件

12.2.4  删除事件

12.3  知识点小结

12.4  思考与练习

第13章  MySQL权限管理

13.1  MySQL权限

13.1.1  MySQL权限工作原理

13.2  权限表

13.2.1  user表

13.2.2  db表和host表

13.2.3  tables_priv表

13.2.4  columns_priv表

13.2.5  procs_priv表

13.3  用户管理

13.3.1  添加用户

13.3.2  查看用户

13.3.3  修改用户账号

13.3.4  修改用户口令

13.3.5  删除用户

13.4  账户权限管理

13.4.1  权限授予

13.4.2  权限的转移和限制

13.4.3  权限的撤销

13.5  知识点小结

13.6  思考与练习

第14章  事务与MySQL的多用户并发控制

14.1  事务

14.1.1  事务的概念

14.1.2  事务的ACID特性

14.1.3  MySQL事务控制语句

14.1.4  事务的隔离性级别

14.2  MySQL的并发控制

14.2.1  并发概述

14.2.2  锁的概述

14.2.3  MyISAM表的表级锁

14.2.4  InnoDB表的行级锁

14.2.5  死锁

14.3  知识点小结

14.4  思考与练习

第15章  MySQL数据库备份与还原

15.1  备份与还原概述

15.1.1  备份的重要性与常见故障

15.1.2  备份的策略与常用方法

15.1.3  数据库的还原

15.2  通过文件备份和还原

15.3  通过命令mysqldump备份与还原

15.3.1  应用mysqldump命令备份数据

15.3.2  应用mysqldump命令还原数据

15.4  从文本文件导出和导入表数据

15.5  知识点小结

15.6  思考与练习

第16章  MySQL日志管理

16.1  MySQL的日志

16.2  日志管理

16.2.1  启动日志

16.2.2  查看日志

16.2.3  删除日志

16.3  二进制日志管理

16.3.1  启动二进制日志

16.3.2  查看二进制日志

16.3.3  删除二进制日志

16.3.4  二进制日志还原数据库

16.4  慢查询日志管理

16.4.1  启动慢查询日志

16.4.2  查看慢查询日志

16.4.3  删除慢查询日志

16.5  通用查询日志管理

16.5.1  启动通用查询日志

16.5.2  查看通用查询日志

16.5.3  删除通用查询日志

16.6  知识点小结

16.7  思考与练习

第17章  分布式数据库与MySQL的运维

17.1  分布式数据库

17.1.1  集中式与分布式

17.1.2  分布式数据库的基本概念

17.1.3  分布式数据库的模式结构

17.1.4  分布式数据库管理系统

17.1.5  分布式数据库系统

17.1.6  分布式数据存储方法

17.2  MySQL数据切分技术

17.3  MySQL复制技术

17.3.1  MySQL复制的概念

17.3.2  MySQL复制的优势

17.3.3  MySQL复制的实现原理

17.3.4  MySQL复制的模式

17.4  MySQL集群技术

17.4.1  MySQL Cluster基本概念

17.4.2  理解MySQL Cluster节点

17.5  MySQL的缓存机制

17.6  知识点小结

17.7  思考与练习

第18章  MySQL在Web开发中的应用

18.1  PHP概述

18.1.1  何谓PHP

18.1.2  PHP优势

18.1.3  PHP的工作原理

18.1.4  PHP结合数据库应用的优势

18.2  HTML与表单

18.2.1  HTML基础知识

18.2.2  HTML表单简介

18.2.3  表单数据的接收

18.3  使用PHP进行MySQL数据库编程

18.3.1  PHP对MySQL数据库的工作原理

18.3.2  编程步骤

18.3.3  使用PHP操作MySQL数据库

18.4  PHP操作数据库的常见问题与解决方案

18.5  知识点小结

18.6  思考与练习

第19章  非关系型数据库—NoSQL

19.1  NoSQL概述

19.2  NoSQL数据库与关系型数据库的比较

19.2.1  关系型数据库的优势

19.2.2  关系型数据库的劣势

19.2.3  NoSQL数据库的优势

19.3  NoSQL数据库的类型

19.3.1  键值(Key/Value)型数据库

19.3.2  面向文档的数据库

19.3.3  面向列的数据库

19.4  NoSQL数据库选用原则

19.5  NoSQL的CAP理论

19.6  主流NoSQL数据库

19.6.1  HBase

19.6.2  Redis

19.6.3  MongoDB

19.6.4  Couchbase

19.6.5  LevelDB

19.7  知识点小结

19.8  思考与练习

参考文献

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信