计算机基础教育 > 数据库类

数据库原理及应用(MySQL)

书号:9787113259426 套系名称:普通高等院校应用型人才培养“十三五”规划教材

作者:曾凤生 郑燕娥 出版日期:2019-10-01

定价:48.00 页码 / 开本:288 /16

策划编辑:周海燕 责任编辑:周海燕 冯彩茹

适用专业:计算机基础教育 适用层次:高等教育

最新印刷时间:2025-01-16

资源下载
教学课件 教学素材
习题答案 教学案例(暂无)
教学设计(暂无) 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  • 本书系统全面地阐述数据库系统的基础理论、基本技术和基本方法。全书通过一个项目
    功能的完成详细介绍了MySQL 在电商平台开发中的应用,能使读者深刻理解关系数据库逻
    辑模型,提高数据库设计能力。
    本书适合作为应用型本科学校计算机相关专业数据库课程的教材,也可作为从事数据库
    系统研究、开发和应用的研究人员和工程技术人员的参考用书。
  • 数据库技术从20 世纪60 年代中期产生到今天已有50 多年的历史,经历了三代
    演变,造就了网状数据库之父Charles W. Bachman(查尔斯·巴赫曼)、关系数据库
    之父Edgar F. Codd(埃德加·科德)、数据库技术和数据库“事务处理”专家James Gray
    (詹姆斯·格雷)、数据库系统奠基性基本概念和实践技术专家Michael Stonebraker
    (迈克尔·斯通布雷克)共四位图灵奖得主,发展了以数据建模和DBMS 核心技术为
    主,内容丰富的一门学科,带动了一个巨大的软件产业——DBMS 产品及其相关工具
    和解决方案。
    数据库技术是计算机科学技术史发展最快的领域之一,也是应用最广的技术之
    一,它已成为计算机信息系统与应用系统的核心技术和重要基础。正是由于数据库具
    有重要的基础地位,数据库理论与技术教育已成为现代计算机科学和相关学科教育
    中的核心部分,所有计算机及其相关专业的学生都有必要掌握和熟悉数据库理论与
    技术。
    通过多年的数据库课程教学,我们发现学生在学习数据库课程之后,仍然不会
    “用”数据库——不会设计数据库、不会管理数据库、不会开发数据库应用程序。带
    着这些问题,我们进行了一系列数据库课程的教学改革探索与实践,积累了一定的经
    验。目前,虽然数据库教材很多,但是很难找到完全适合应用型本科人才培养需要的
    教材。于是,我们决定动手编写一本让学生会“用”数据库的教材,一本“够用”的
    教材,这便是编写本书的初衷。本书虽然不一定能够完全达到目标,但至少开始了有
    益的尝试。
    本书结合多年的教学实践,在系统阐述数据库系统的理论、技术和方法的同时,
    详细介绍MySQL 在电商平台开发中的应用。
    全书分为3 篇12 章。基础篇包括第1~3 章,分别介绍了数据库系统概论、关系
    数据库、关系数据库标准语言SQL。理论和技术篇包括第4~10 章,分别介绍了关系
    数据库理论、数据库设计、数据库安全性、数据库完整性、数据库恢复技术、并发控
    制和数据管理技术前沿。实践篇包括第11~12 章,分别给出12 个案例和10 个实验。
    与其他教材相比,本书的主要特点如下:
    (1)强化对关系数据库模式的理解,使学生深刻理解关系数据库查询原理,灵活
    掌握关系代数和SQL 查询语言。
    (2)以案例为驱动,通过分析应用需求来介绍数据库建模的基本方法,使学生深
    刻理解关系数据库设计思想,提高数据库设计能力。
    (3)增加数据库应用开发和数据库最新技术介绍,使学生能了解数据库常用访问
    方法和Web 数据库的原理、实现技术,为后续学习和数据库应用开发实践打下一定
    的基础。
    本书由曾凤生、郑燕娥任主编,王琴和赵宏岩任副主编。其中,第1、2、3、9、
    10、12 章由曾凤生执笔,第6、7、8、11 章由郑燕娥执笔,第4 章由王琴执笔,第5
    章由赵宏岩执笔。曾凤生提出本书的编写大纲,并对全书的初稿进行了修改、补充
    和整理。
    本书在编写过程中,参阅了大量的图书和文献资料,在此向参考资料的作者表示
    衷心的感谢。
    由于编者水平有限,加之时间仓促,不足之处在所难免,希望各位专家、读者和
    老师指正,我们将根据收集到的宝贵意见及时修订,使之不断完善。
    编 者
    2019 年7 月
  • 基 础 篇
    第1 章 数据库系统概论 ..................................................................................................... 1
    1.1 数据库系统概述 ................................................................................................. 1
    1.2 数据库技术的发展 ............................................................................................. 4
    1.2.1 人工管理阶段 ........................................................................................... 4
    1.2.2 文件管理阶段 ........................................................................................... 5
    1.2.3 数据库管理系统阶段 ................................................................................ 8
    1.3 数据模型 ........................................................................................................... 11
    1.3.1 数据和数据模型 ....................................................................................... 11
    1.3.2 概念层数据模型 ...................................................................................... 13
    1.3.3 数据库建模 ............................................................................................. 16
    1.3.4 组织层数据模型 ...................................................................................... 24
    1.4 数据库的结构 ................................................................................................... 29
    1.4.1 模式的基本概念 ...................................................................................... 29
    1.4.2 三级模式结构 ......................................................................................... 29
    1.4.3 模式映像与数据独立性 .......................................................................... 31
    1.5 数据库系统的组成 ........................................................................................... 32
    1.6 数据库与计算思维 ........................................................................................... 35
    1.6.1 数据库课程中的计算思维核心概念 ....................................................... 35
    1.6.2 数据库教学中的计算思维训练 .............................................................. 36
    小结 .......................................................................................................................... 37
    习题 .......................................................................................................................... 38
    第2 章 关系数据库 ........................................................................................................... 39
    2.1 关系数据模型和关系数据库 ............................................................................ 39
    2.1.1 关系数据结构 ......................................................................................... 39
    2.1.2 关系操作 ................................................................................................. 40
    2.1.3 关系完整性约束 ...................................................................................... 42
    2.2 关系模型的基本术语与形式化定义 ................................................................. 42
    2.2.1 基本术语 ................................................................................................. 42
    数据库原理及应用(MySQL)
    II
    2.2.2 形式化定义 ............................................................................................. 44
    2.3 关系代数 .......................................................................................................... 47
    2.3.1 传统的集合运算 ...................................................................................... 48
    2.3.2 专门的关系运算 ...................................................................................... 49
    小结 .......................................................................................................................... 59
    习题 .......................................................................................................................... 59
    第3 章 关系数据库标准语言SQL .................................................................................. 62
    3.1 SQL 概述 ......................................................................................................... 62
    3.1.1 SQL 的发展历史 ..................................................................................... 62
    3.1.2 SQL 的特点 ............................................................................................. 63
    3.1.3 SQL 的功能 ............................................................................................. 63
    3.2 MySQL 支持的数据类型 .................................................................................. 64
    3.2.1 数值型 ..................................................................................................... 64
    3.2.2 日期时间型数据类型 .............................................................................. 65
    3.2.3 字符串型数据类型 .................................................................................. 65
    3.2.4 二进制数据类型 ...................................................................................... 65
    3.2.5 其他类型 ................................................................................................. 66
    3.3 数据定义功能 ................................................................................................... 66
    3.3.1 数据库的定义 ......................................................................................... 66
    3.3.2 表的定义 ................................................................................................. 66
    3.4 数据查询功能 ................................................................................................... 69
    3.4.1 学生数据库基本结构 .............................................................................. 69
    3.4.2 单表查询 ................................................................................................. 71
    3.4.3 多表连接查询 ......................................................................................... 86
    3.4.4 CASE 表达式 ........................................................................................... 93
    3.4.5 子查询 ..................................................................................................... 97
    3.4.6 查询的集合运算 ..................................................................................... 102
    3.5 视图 ................................................................................................................ 102
    3.5.1 视图概述 ................................................................................................ 103
    3.5.2 视图的定义及使用 ................................................................................. 104
    3.5.3 视图的修改与删除 ................................................................................. 105
    3.5.4 物化视图 ................................................................................................ 106
    3.6 数据更改功能 .................................................................................................. 107
    3.6.1 数据插入 ................................................................................................ 107
    3.6.2 数据更新 ................................................................................................ 109
    3.6.3 数据删除 ................................................................................................ 111
    小结 ......................................................................................................................... 112
    目 录
    III
    习题 ......................................................................................................................... 112
    理论和技术篇
    第4 章 关系数据库理论 ................................................................................................. 116
    4.1 关系模式设计的问题....................................................................................... 116
    4.2 函数依赖 ......................................................................................................... 118
    4.2.1 基本概念 ................................................................................................ 118
    4.2.2 一些术语和符号 ..................................................................................... 119
    4.2.3 函数依赖的推理规则 ............................................................................. 120
    4.2.4 闭包及候选码求解方法 ......................................................................... 121
    4.2.5 极小函数依赖集 ..................................................................................... 125
    4.3 范式 ................................................................................................................ 127
    4.3.1 第一范式 ................................................................................................ 127
    4.3.2 第二范式 ................................................................................................ 128
    4.3.3 第三范式 ................................................................................................ 130
    4.3.4 Boyce-Codd 范式 ................................................................................... 130
    4.3.5 规范化小结 ............................................................................................ 133
    4.4 关系模式的分解准则....................................................................................... 134
    4.5 查询处理与优化 .............................................................................................. 139
    4.5.1 查询处理与优化概述 ............................................................................. 139
    4.5.2 SQL 的查询处理 .................................................................................... 139
    4.5.3 查询优化方法 ........................................................................................ 142
    小结 ......................................................................................................................... 148
    习题 ......................................................................................................................... 150
    第5 章 数据库设计 ......................................................................................................... 151
    5.1 数据库设计概述 .............................................................................................. 151
    5.2 需求分析 ......................................................................................................... 153
    5.3 概念模型设计 .................................................................................................. 155
    5.4 逻辑模型设计 .................................................................................................. 161
    5.5 物理结构设计 .................................................................................................. 166
    5.6 数据库的运行与维护 ...................................................................................... 168
    小结 ......................................................................................................................... 169
    习题 ......................................................................................................................... 169
    第6 章 数据库安全性 ..................................................................................................... 171
    6.1 安全性问题 ..................................................................................................... 171
    数据库原理及应用(MySQL)
    IV
    6.2 数据库安全控制 .............................................................................................. 172
    6.2.1 计算机及信息安全技术标准的发展 ...................................................... 172
    6.2.2 安全性级别 ............................................................................................ 172
    6.2.3 数据库安全控制方法 ............................................................................. 173
    6.3 MySQL 的安全机制 ........................................................................................ 176
    6.3.1 MySQL 用户管理 ................................................................................... 176
    6.3.2 角色与权限管理 ..................................................................................... 178
    6.4 Oracle 的安全机制 .......................................................................................... 180
    6.4.1 用户标识和鉴定 ..................................................................................... 180
    6.4.2 授权与检查机制 ..................................................................................... 180
    6.4.3 审计 ........................................................................................................ 182
    6.5 安全数据库的研究方向 ................................................................................... 183
    小结 ......................................................................................................................... 184
    习题 ......................................................................................................................... 184
    第7 章 数据库完整性 ..................................................................................................... 185
    7.1 数据库完整性概述 .......................................................................................... 185
    7.2 完整性约束条件 .............................................................................................. 186
    7.3 完整性控制与实现 .......................................................................................... 187
    小结 ......................................................................................................................... 191
    习题 ......................................................................................................................... 191
    第8 章 数据库恢复技术 ................................................................................................. 192
    8.1 事务概述 ......................................................................................................... 192
    8.1.1 事务的概念 ............................................................................................ 192
    8.1.2 事务的特性 ............................................................................................ 193
    8.1.3 事务的状态 ............................................................................................ 194
    8.1.4 事务调度 ................................................................................................ 194
    8.2 数据库恢复概述 .............................................................................................. 194
    8.2.1 数据库恢复的基本原理 ......................................................................... 194
    8.2.2 数据库恢复的约束条件 ......................................................................... 194
    8.3 故障的种类 ..................................................................................................... 195
    8.4 恢复的实现技术 .............................................................................................. 196
    8.5 恢复策略 ......................................................................................................... 198
    8.5.1 事务故障恢复 ........................................................................................ 198
    8.5.2 系统故障恢复 ........................................................................................ 199
    8.5.3 介质故障恢复 ........................................................................................ 200
    8.6 具有检查点的恢复技术 ................................................................................... 200
    目 录
    V
    8.7 数据库镜像 ..................................................................................................... 201
    小结 ......................................................................................................................... 204
    习题 ......................................................................................................................... 204
    第9 章 并发控制 ............................................................................................................. 205
    9.1 并发控制概述 .................................................................................................. 205
    9.1.1 并发控制的概念 ..................................................................................... 205
    9.1.2 数据不一致问题 ..................................................................................... 206
    9.2 封锁 ................................................................................................................ 207
    9.2.1 封锁类型 ................................................................................................ 207
    9.2.2 封锁协议 ................................................................................................ 207
    9.3 活锁和死锁 ..................................................................................................... 209
    9.4 并发调度的可串行性....................................................................................... 210
    9.5 两段锁协议 ..................................................................................................... 212
    9.6 封锁的粒度 ..................................................................................................... 213
    小结 ......................................................................................................................... 214
    习题 ......................................................................................................................... 214
    第10 章 数据管理技术前沿 ........................................................................................... 215
    10.1 大数据的兴起 ................................................................................................ 215
    10.1.1 大数据的概念 ...................................................................................... 216
    10.1.2 从数据库到大数据 ............................................................................... 216
    10.1.3 大数据处理模式 ................................................................................... 217
    10.2 大数据处理平台和框架 ................................................................................. 217
    10.2.1 Apache Hadoop ..................................................................................... 218
    10.2.2 Apache Storm ....................................................................................... 219
    10.2.3 Apache Spark ........................................................................................ 219
    10.3 数据库面临的挑战 ........................................................................................ 220
    10.3.1 MySpace 数据库构架变化 ................................................................... 220
    10.3.2 数据库可扩展性问题的解决方法 ....................................................... 222
    10.3.3 数据库的发展 ...................................................................................... 223
    10.4 NoSQL 数据库 ............................................................................................... 223
    10.4.1 键值数据库 .......................................................................................... 223
    10.4.2 文档数据库 .......................................................................................... 224
    10.4.3 列数据库 .............................................................................................. 225
    10.4.4 图数据库 .............................................................................................. 226
    10.5 NewSQL 数据库 ............................................................................................ 227
    10.5.1 VoltDB .................................................................................................. 227
    数据库原理及应用(MySQL)
    VI
    10.5.2 NuoDB .................................................................................................. 228
    小结 ......................................................................................................................... 228
    习题 ......................................................................................................................... 228
    实 践 篇
    第11 章 案例 ................................................................................................................... 229
    案例1 用户数据的初始化 ..................................................................................... 229
    案例2 用户登录 ................................................................................................... 233
    案例3 日志的操作 ................................................................................................ 236
    案例4 冗余字段的使用 ........................................................................................ 236
    案例5 日点击量的统计 ........................................................................................ 238
    案例6 改进后的点击量日志表存储过程 .............................................................. 239
    案例7 商品主表中总点击量字段prod_click_all 的更新 ....................................... 240
    案例8 事务的操作 ................................................................................................ 242
    案例9 异常的处理 ................................................................................................ 245
    案例10 用户充值功能的实现 ............................................................................... 248
    案例11 解决用户充值的数据冲突方法一 ............................................................. 250
    案例12 解决用户充值的数据冲突方法二 ............................................................. 253
    小结 ......................................................................................................................... 256
    习题 ......................................................................................................................... 256
    第12 章 实验 ................................................................................................................... 257
    实验1 数据库的创建和管理 ................................................................................. 257
    实验2 表、索引与视图的基础操作 ...................................................................... 258
    实验3 SQL——select 查询操作 ............................................................................ 261
    实验4 SQL 数据更新操作 .................................................................................... 264
    实验5 数据库存储和优化 ..................................................................................... 265
    实验6 数据库安全性 ............................................................................................ 268
    实验7 数据库完整性 ............................................................................................ 270
    实验8 数据库并发控制 ........................................................................................ 272
    实验9 数据库备份与恢复 ..................................................................................... 273
    实验10 数据库应用系统设计与开发 .................................................................... 276
    参考文献 .............................................................................................................................. 277
  • 曾凤生: 硕士,副教授,仰恩大学计算机学院党总支书记兼副院长,主讲课程有:数据库系统原理、操作系统、高级语言程序设计等,主要研究方向是数据挖掘与大数据分析。 
    
    郑燕娥 :硕士,副教授,仰恩大学计算机系主任,主讲课程有:面向对象程序设计、设计模式、数据库安全,主要研究方向:大数据处理和信息系统。 
    
  • 本书系统地讲述了数据库的基本理论、实现技术和开发方法。重点介绍关系数据库以及标准SQL语句、突出数据库的网络应用,特别是数据库系统的新技术。同时通过理论讲授、课程实验相结合的方式,使学生系统地理解如何设计一个合理的、优化的数据库,掌握在某一个数据库管理系统上进行数据库操作,培养学生具有设计数据库模式以及开发数据库应用系统的基本能力。