新書推薦:
《
汉末晋初之际政治研究
》
售價:HK$
135.7
《
强者破局:资治通鉴成事之道
》
售價:HK$
82.8
《
鸣沙丛书·鼎革:南北议和与清帝退位
》
售價:HK$
121.0
《
从康德到黑格尔的发展:兼论宗教哲学(英国观念论名著译丛)
》
售價:HK$
62.1
《
突破不可能:用特工思维提升领导力
》
售價:HK$
79.4
《
王阳明大传:知行合一的心学智慧(精装典藏版)
》
售價:HK$
227.7
《
失衡与重塑——百年变局下的中国与世界经济
》
售價:HK$
135.7
《
不被定义的年龄:积极年龄观让我们更快乐、健康、长寿
》
售價:HK$
79.4
|
內容簡介: |
本书从实用性和先进性出发,通过一个完整的数据库应用实例和数据,全面介绍数据库的基本理论、数据库的系统管理及数据库的设计与开发技术。全书共14章,主要内容包括:数据库系统概论、关系数据模型、关系数据库标准SQL语言、查询处理优化、事务与并发控制、数据库恢复技术、数据库安全、规范化理论、数据库设计方法、数据库新技术、典型商业数据库和选型,附录是完整的数据库实例和数据,以及实验指导书。本书提供免费电子课件、程序代码、习题参考答案和实例数据库文件。本书可作为高等学校软件工程和计算机专业本科及研究生的教材,也可供相关领域的技术和管理人员学习、参考。
|
關於作者: |
魏祖宽,男,博士,电子科技大学教授,韩国信息科学协会(KISS)会员,韩国开放型GIS协会(Korea OpenGIS)会员。历任韩国仁荷大学电子计算工学科讲师、韩国三星电子株式会社课长、韩国GEOMania株式会社技术开发研究所责任研究员、引擎开发2组组长。长期从事大数据、云计算等领域的教学和科研工作。
|
目錄:
|
目 录
第1章 数据库系统概论 1
1.1 数据库的基本概念 1
1.1.1 信息与数据 1
1.1.2 数据库 2
1.1.3 数据库管理系统 2
1.1.4 元数据 2
1.2 数据模型 2
1.2.1 组成要素 3
1.2.2 概念数据模型 3
1.2.3 逻辑数据模型 4
1.3 数据管理技术的产生和发展 7
1.4 数据库管理系统的功能与特点 10
1.4.1 数据库管理系统的功能 10
1.4.2 数据库管理系统的特点 11
1.5 数据库系统的结构 13
1.5.1 数据库三级模式结构 13
1.5.2 数据库二级映像与数据独立性 14
1.5.3 数据库的体系结构 15
1.5.4 数据库系统的组成 17
1.6 数据库语言 18
1.6.1 数据定义语言 19
1.6.2 数据操纵语言 19
1.6.3 数据控制语言 19
1.6.4 事务控制语言 19
1.7 数据库技术的新发展 19
1.7.1 数据库技术发展趋势 19
1.7.2 新型数据库与大数据 20
小结 22
习题 23
第2章 关系模型与关系代数 24
2.1 关系模型 24
2.1.1 基本概念 24
2.1.2 关系模型的数据结构 25
2.1.3 数据操作 27
2.1.4 数据约束 28
2.2 关系数据结构 28
2.2.1 关系 28
2.2.2 关系的性质 30
2.2.3 关系模式 30
2.3 关系操作 32
2.4 关系的完整性 32
2.4.1 实体完整性 32
2.4.2 参照完整性 33
2.4.3 自定义完整性 34
2.5 关系数据模型的优缺点 34
2.6 关系代数 35
2.6.1 基本运算 35
2.6.2 专门的关系运算 37
2.6.3 扩展的关系运算 42
2.7 关系演算 43
2.7.1 元组关系演算 43
2.7.2 域关系演算语言QBE 44
小结 47
习题 48
第3章 数据库设计过程与方法 50
3.1 数据库设计概述 50
3.1.1 数据库的设计方法 51
3.1.2 数据库开发生命周期方法 53
3.1.3 数据库设计的基本过程 55
3.2 数据库需求分析 57
3.2.1 需求描述与分析 57
3.2.2 需求分析的步骤 58
3.2.3 数据字典 62
3.3 数据库概念设计 63
3.3.1 概念设计的必要性 63
3.3.2 概念设计的方法和步骤 64
3.3.3 概念设计工具:E-R图 66
3.4 数据库逻辑设计与优化 66
3.4.1 逻辑设计环境 66
3.4.2 E-R模式向关系模型的转换 66
3.4.3 用关系规范化理论对关系
模型进行优化 67
3.5 数据库的物理设计 68
3.5.1 数据库的物理结构确定 68
3.5.2 物理结构的评价 70
3.6 数据库的实施和运行维护 70
3.6.1 数据库实际结构的建立 70
3.6.2 装载数据 70
3.6.3 应用程序开发测试 71
3.6.4 数据库试运行 71
3.6.5 数据库运行与维护 71
小结 72
习题 73
第4章 实体-联系模型 74
4.1 实体-联系模型概述 74
4.1.1 实体集 74
4.1.2 属性 74
4.1.3 联系集 76
4.2 约束 77
4.2.1 映射基数 77
4.2.2 参与约束 77
4.3 实体-联系图 77
4.4 扩展的实体-联系模型特性 78
4.5 实体-联系设计 80
4.5.1 E-R图设计 80
4.5.2 用实体集还是用属性 83
4.5.3 用实体集还是用联系集 83
4.5.4 二元还是n元联系集 84
4.6 数据建模的其他表示法及工具 84
4.6.1 统一建模语言 84
4.6.2 数据建模的其他方法 90
小结 93
习题 94
第5章 规范化 96
5.1 关系模式设计中的问题 96
5.2 函数依赖 99
5.2.1 函数依赖的定义 99
5.2.2 Armstrong公理 100
5.2.3 函数依赖与码的联系 101
5.2.4 属性集的闭包 102
5.2.5 FD推理规则的完备性 103
5.2.6 FD集的最小依赖集 103
5.3 模式分解 104
5.3.1 模式分解问题 105
5.3.2 无损分解 105
5.3.3 保持函数依赖的分解 108
5.3.4 模式分解与模式等价问题 110
5.4 范式 111
5.4.1 第一范式(1NF) 112
5.4.2 第二范式(2NF) 112
5.4.3 第三范式(3NF) 113
5.4.4 BC范式(BCNF) 114
5.5 多值函数依赖与4NF 115
5.5.1 多值函数依赖 115
5.5.2 4NF 116
5.6 函数依赖与5NF 117
小结 117
习题 118
第6章 基础SQL语言 121
6.1 SQL概述 121
6.1.1 SQL标准与历史 121
6.1.2 SQL标准数据类型及SQL标准
内置函数 122
6.1.3 SQL的功能与特点 123
6.2 数据库基本结构定义 124
6.2.1 数据库的创建、修改与删除 125
6.2.2 基本表的定义、修改与删除 128
6.3 数据查询语句基本结构 130
6.3.1 查询语句概述 130
6.3.2 基本查询结构 131
6.3.3 查询语句中使用运算符 133
6.3.4 用聚集函数统计查询结果 137
6.3.5 INTO子句 139
6.3.6 GROUP BY子句 140
6.3.7 HAVING子句 140
6.3.8 ORDER BY子句 141
6.3.9 用TOP谓词限制结果集 141
6.4 集合运算 143
6.4.1 并运算 143
6.4.2 交差运算 143
6.4.3 集合运算的使用原则 144
6.5 连接查询 145
6.5.1 连接概述 145
6.5.2 内连接 145
6.5.3 自连接 146
6.5.4 外连接 147
6.6 嵌套查询 148
6.6.1 嵌套查询基本概念 148
6.6.2 非相关子查询和相关子查询 149
6.6.3 IN和NOT IN运算符 150
6.6.4 ANY和ALL运算符 151
6.6.5 EXISTS和NOT EXISTS
运算符 152
6.7 数据修改 153
6.7.1 数据插入 153
6.7.2 数据更新 155
6.7.3 数据删除 155
6.8 视图 156
6.8.1 视图的定义 156
6.8.2 查询中使用视图 157
6.8.3 视图的更新 157
6.8.4 视图的作用 158
6.9 完整性约束 159
6.9.1 完整性约束的定义 159
6.9.2 PRIMARY KEY约束 159
6.9.3 UNIQUE约束 159
6.9.4 NOT NULL约束 160
6.9.5 CHECK约束 160
6.9.6 FOREIGN KEY约束 161
6.9.7 域约束 163
6.9.8 断言 164
6.9.9 完整性约束的修改 164
6.9.10 完整性约束的验证 166
习题 168
第7章 高级SQL语言 171
7.1 游标 171
7.1.1 游标的基本概念 171
7.1.2 游标种类 172
7.1.3 游标操作 173
7.2 存储过程 176
7.2.1 存储过程的概念 176
7.2.2 存储过程的类型 177
7.2.3 存储过程的操作 178
7.3 函数 181
7.3.1 SQL中函数的概念 181
7.3.2 函数的类型 182
7.3.3 函数的操作 182
7.4 触发器 187
7.4.1 触发器的概念和作用 187
7.4.2 触发器的分类 188
7.4.3 触发器的工作原理 188
7.4.4 创建和使用DML触发器 189
7.4.5 创建和使用DDL触发器 192
7.5 递归查询 193
7.5.1 递归查询基本概念 193
7.5.2 递归查询的操作 193
7.6 记录排序与分页 195
习题 196
第8章 数据库访问接口与应用程序开发 197
8.1 数据库连接访问 197
8.1.1 ADO 198
8.1.2 ODBC 199
8.1.3 JDBC 201
8.2 XML数据交换 206
8.2.1 XML数据模型 207
8.2.2 XML数据库 207
8.2.3 XML数据交换 209
8.3 数据库应用程序开发 213
8.3.1 数据库应用程序架构 213
8.3.2 数据访问层和对象关系映射
(ORM) 215
8.3.3 数据展现:查询和报表 216
8.3.4 CS应用程序开发 217
8.3.5 BS应用程序开发 217
习题 218
第9章 数据存储和查询处理与优化 219
9.1 数据存储 219
9.1.1 物理存储介质概述 219
9.1.2 文件组织 221
9.1.3 RAID 223
9.2 索引 227
9.2.1 B 树索引 229
9.2.2 散列索引 233
9.2.3 位图索引 233
9.3 查询处理及查询优化 235
9.3.1 查询处理 235
9.3.2 关系代数运算的执行 236
9.3.3 查询优化技术 238
9.3.4 代数优化 241
9.3.5 物理优化 243
习题 245
第10章 事务与并发控制 246
10.1 事务的概念与性质 246
10.2 事务的并发执行可能引起的
问题 249
10.3 可串行化 251
10.3.1 串行调度 251
10.3.2 可串行化调度 252
10.3.3 可恢复性 255
10.3.4 事务隔离性级别 256
10.4 基于锁的并发控制协议 257
10.4.1 封锁 257
10.4.2 两段锁协议(2PL) 259
10.4.3 锁的升级及更新锁 260
10.5 活锁与死锁 261
10.5.1 活锁 261
10.5.2 死锁 262
10.6 多粒度封锁 264
习题 266
第11章 故障恢复 267
11.1 数据库恢复概述 267
11.1.1 数据库恢复概述 267
11.1.2 故障种类 267
11.1.3 日志记录 268
11.2 恢复与原子性 269
11.2.1 事务管理器 269
11.2.2 使用日志撤销和重做事务 270
11.3 缓冲区管理 275
11.3.1 缓冲区管理器结构 275
11.3.2 缓冲区管理策略 275
11.3.3 日志记录缓冲 276
11.3.4 检查点 277
11.4 恢复处理 280
11.4.1 事务故障的恢复 280
11.4.2 系统故障的恢复 280
11.4.3 介质故障的恢复 282
习题 283
第12章 数据库安全 284
12.1 数据库安全基础 284
12.2 数据库安全性控制 286
12.3 用户标识和鉴别 287
12.4 自主访问控制 288
12.4.1 权限类型 289
12.4.2 授权及权限回收 290
12.5 基于角色的访问控制 290
12.6 强制访问控制 291
12.7 安全审计 292
12.8 其他数据库安全机制 294
12.8.1 使用视图实现安全控制 294
12.8.2 使用存储过程实现安全控制 294
12.9 外部安全机制 295
12.9.1 数据加密 295
12.9.2 数字签名 297
12.9.3 认证技术 297
习题 298
|
內容試閱:
|
前言
计算机技术的发展不仅极大地促进了科学技术的发展,而且明显加快了经济信息化和社会信息化的进程。因此,计算机教育在各国都备受重视,具备计算机知识与使用能力已成为21世纪人才的基本素质之一。
数据库应用技术是其中的核心技术之一,以其为核心的各种数据库应用管理,无可争议地改变了政府部门和企事业单位的运营和管理方式。随着数据库应用广度和深度的扩展,不仅是计算机和信息技术行业,而且包括技术管理、工程管理甚至决策人员在内的众多行业都开始关心数据库技术。
为了适应各高校计算机学科正在开展的课程体系与教学内容的改革,及时反映相关研究成果,积极探索适应21世纪计算机人才培养的教学模式,我们编写了这本数据库应用技术的教材。
本教材具有如下特色。
1.根据读者的层次分类。将数据库技术分为数据库基础知识、数据库管理技术、数据库应用技术、现代数据库技术和主流商业数据库介绍等四部分,且内容上保持连贯性。读者可以根据自身需求选择适当的内容阅读,不同层次的读者可以从不同的深度学习数据库知识。这样就使得本书更加符合软件工程应用的特点。
2.面向软件工程理念,采用工程应用型学习方法,即提出问题解决问题应用分析的问题驱动方式,突出学生主动探究在整个教学中的作用。
3.在内容描述上,我们换位思考,站在学生的角度阐述概念和理论,避免堆砌大量学生不常用的专业词汇,使得整个教材通俗易懂。
4.在内容组织上,以一个典型的数据库应用系统(简化的医院管理数据库HIS)为案例,在MS SQL Server平台上,以理论和实际相结合的方式,讲解数据库的概念和应用开发技术,以期达到高效的学习效果。
5.本教材的内容分为四部分:① 数据库基础知识,讲述数据库的基本概念和理论知识,这部分是基础,面向所有读者;② 数据库管理技术,讲述数据库维护管理技术,面向关心数据库维护的读者;③ 数据库应用技术,讲述数据库的设计开发技术,面向关心行业应用系统开发的读者;④ 现代数据库技术及主流商业数据库介绍,介绍数据库技术的前沿热点及主要的数据库管理系统的商业产品,面向关心数据库发展动向及实际数据库产品的读者。
6.本教材注重将计算机理论知识和现实中的工程应用相结合,适当引入数据库技术的的最新发展,保持了教学内容的先进性和实用性。本教材源于基础教育的教学实践及科研实践中的许多心得体会,凝聚了工作在教学和科研第一线教师多年的教学与科研成果。
通过学习本教材,你可以了解:
? 数据库的概念、组成结构等基础知识;
? 关系数据库的核心关系数据模型及数据库的操作语言SQL;
? 数据库的查询优化、并发控制、系统恢复、安全性等数据库管理技术;
? 数据库的应用设计方法和开发技术;
? 现代数据库技术的热点数据挖掘、数据仓库、分布式数据库以及空间数据库;
? 目前的主流数据库管理系统产品Oracle、SQLServer、DB2、MySQL及Sybase的概况。
教学中,可以根据教学对象和学时等具体情况对教材中的内容进行删减和组合,也可以进行适当扩展,参考学时为32~64学时。为适应教学模式和教学方法的改革,本教材每章配套安排了习题及参考答案、实验指导书、多媒体电子课件及相应的网络教学资源,请登录华信教育资源网(http:hxedu.com.cn)免费注册下载。
本书第1、2、3、4、5章由魏祖宽编写,第9、10、11、12及13章的部分小节由郑莉华编写,第13章的主体部分、全书的案例数据库、实验设计及指导的内容由牛新征编写,第6、7、8、14章由孙明编写。全书由魏祖宽统稿并定稿。参加本书编写的还有重庆邮电大学的刘兆宏,电子科技大学的胡旺、周益民、代林、胡红梅、陈佳、张乐信、刘小龙、姬海波、梁继东、陶晶晶、尹畅等,他们承担了收集基本素材、案例数据、相关技术资料及稿件校对等大量的基础工作。
本书在编写过程中参考了大量新近出版的相关资料和书籍,吸取了许多专家的宝贵经验,在此向他们深表谢意!
由于数据库应用技术发展迅速,作者学识有限,书中难免存在误漏之处,望广大读者批评指正。
作 者
2020年1月
|
|