新書推薦:
《
火枪与账簿:早期经济全球化时代的中国与东亚世界
》
售價:NT$
352.0
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:NT$
449.0
《
银行业架构网络BIAN(全球数字化时代金融服务业框架)(数字化转型与创新管理丛书)
》
售價:NT$
449.0
《
金托邦:江湖中的沉重正义
》
售價:NT$
275.0
《
易经今解:释疑·解惑·见微
》
售價:NT$
403.0
《
东欧史(全二册)-“中间地带”的困境
》
售價:NT$
1010.0
《
虚拟资本:金融怎样挪用我们的未来
》
售價:NT$
352.0
《
刻意练习不生气
》
售價:NT$
179.0
|
編輯推薦: |
“首批国家级(线下)一流本科课程”的配套教材,第一批“‘十二五’普通高等教育本科国家级规划教材”,计算机及相关专业本科生的“数据库系统原理”课程教材
|
內容簡介: |
本书是首批“国家级线下一流本科课程”的配套教材、第一批“‘十二五’普通高等教育本科国家级规划教材”。第4版仍然坚持围绕“培养学生会‘用’数据库”的目标,进一步提升学生的概念建模能力,培养学生会“设计”数据库。第4版对全书中的所有核心概念进行了重新梳理,进一步明确了其含义,并给出了比较规范和清晰的定义或描述;对第4章和第6章涉及的大学选课系统、网上书店系统数据库设计实例,进一步优化和规范了功能需求、数据需求、约束需求等的描述,如增加了对系统的各种报表需求的描述,重点关注了业务功能发生时所产生的各种单据及其数据需求描述,在大学选课系统中增加了专业教学计划管理等功能,在网上书店系统中在采购入库的基础上增加了仓库管理、配送出库、图书入库上架、图书出库下架和库存总账管理等功能;根据近几年来学术界和工业界数据库领域的研究进展以及数据库技术的发展趋势,对第12章进行了重写,突出了云计算、人工智能和新硬件等因素对数据库的影响。
全书共分12章。第1章是数据库系统基本概念;第2、3、7章是关系数据库基础(含数据库编程);第4~6章是关系数据库设计;第8~10章是关系数据库管理系统;第11、12章是数据库应用开发和数据管理技术前沿。本书强调数据库应用与设计能力的培养,将数据库设计的内容分散在第4~6章以及8.5节、9.3节等章节逐层推进。
本书可作为计算机及相关专业本科生的“数据库系统原理”课程教材,也可供数据库爱好者自学和参考。
|
目錄:
|
第1章数据库系统概论/1
1.1数据库系统的作用1
1.1.1数据与数据管理1
1.1.2数据管理技术的产生与发展2
1.1.3数据库应用8
1.2数据模型9
1.2.1数据模型的分层10
1.2.2数据模型的组成要素11
1.2.3层次模型12
1.2.4网状模型14
1.2.5关系模型14
1.3数据抽象与数据库三级模式17
1.3.1数据抽象17
1.3.2数据库三级模式结构及两层映像17
1.3.3数据库三级模式与三层模型的联系和区别19
1.4数据库系统21
1.4.1数据库系统组成21
1.4.2数据库管理系统22
1.4.3数据库系统的相关人员26
本章小结27
习题132
第2章关系模型与关系代数/33
2.1关系模型34
2.1.1关系模型的数据结构34
2.1.2关系模型的数据完整性约束39
2.1.3关系操作44
2.2关系代数45
2.2.1传统的集合运算45
2.2.2专门的关系运算46
2.2.3关系代数查询综合举例52本章小结56
习题258
第3章SQL/60
3.1SQL概述60
3.1.1SQL发展61
3.1.2SQL特点62
3.1.3SQL查询基本概念63
3.2单表查询63
3.2.1投影运算65
3.2.2选择运算70
3.2.3排序运算74
3.2.4查询表75
3.2.5聚合查询76
3.3连接查询78
3.3.1等值与非等值连接78
3.3.2自表连接81
3.3.3外连接82
3.4嵌套子查询84
3.4.1使用IN的子查询85
3.4.2使用集合比较运算符的子查询88
3.4.3使用存在量词EXISTS的子查询89
3.4.4复杂子查询实例92
3.5集合运算96
3.6SQL查询的一般格式98
本章小结100
习题3101
〖1〗数据库系统原理与设计(第4版)目录〖3〗〖3〗第4章数据库建模/103
4.1数据库设计过程104
4.2ER模型基本概念及表示105
4.2.1实体与实体集105
4.2.2属性106
4.2.3联系与联系集108
4.3约束109
4.3.1映射约束109
4.3.2码约束与联系集的属性安置112
4.3.3依赖约束113
4.3.4参与约束114
4.3.5多值联系114
4.4弱实体集115
4.5扩展ER特征116
4.5.1类层次116
4.5.2聚合117
4.6ER建模问题118
4.6.1ER建模的基本原则118
4.6.2依赖约束的建模123
4.6.3多值联系的建模126
4.7数据库概念设计实例——大学选课系统128
4.7.1概念设计任务128
4.7.2系统需求分析128
4.7.3数据库概念设计133
4.8逻辑设计——ER模型转换为关系模型138
4.8.1ER模型转换方法138
4.8.2大学选课系统ER模型转换实例142
本章小结146
习题4148
第5章关系数据理论与模式求精/151
5.1问题提出152
5.2函数依赖定义154
5.3范式157
5.3.1第一范式(1NF)157
5.3.2第二范式(2NF)157
5.3.3第三范式(3NF)158
5.3.4BoyceCodd范式(BCNF)159
5.4函数依赖理论161
5.4.1函数依赖集闭包161
5.4.2属性集闭包162
5.4.3正则覆盖165
5.4.4无损连接分解166
5.4.5保持依赖分解169
5.5模式分解算法169
5.5.1BCNF分解算法169
5.5.23NF分解算法171
5.6数据库模式求精173
5.6.1模式求精的必要性及步骤173
5.6.2模式求精实例174
本章小结175
习题5176
第6章关系数据库设计实例——网上书店/178
6.1系统需求分析179
6.1.1需求概述和系统边界179
6.1.2功能需求分析179
6.1.3数据流图182
6.1.4数据需求分析184
6.1.5业务规则及数据完整性约束分析186
6.2数据库概念设计188
6.2.1确定基本实体集及属性188
6.2.2主要业务局部概念建模190
6.2.3定义联系集及属性197
6.2.4完整ER模型200
6.2.5检查是否满足需求200
6.3数据库逻辑设计202
6.4模式求精211
本章小结212
习题6212
第7章SQL数据定义、更新及数据库编程/215
7.1SQL数据定义语言216
7.1.1数据库的定义216
7.1.2基本表的定义220
7.1.3索引的定义224
7.2SQL数据更新语言226
7.2.1插入数据226
7.2.2删除数据228
7.2.3修改数据228
7.3视图230
7.3.1创建视图230
7.3.2查询视图233
7.3.3视图更新234
7.3.4删除视图235
7.4TSQL简介235
7.4.1表达式235
7.4.2函数237
7.4.3流程控制语句240
7.5游标242
7.5.1游标的定义与使用242
7.5.2当前游标集的修改与删除245
7.6存储过程246
7.6.1创建存储过程246
7.6.2执行存储过程250
7.6.3修改和删除存储过程251
7.7触发器251
7.7.1创建触发器252
7.7.2修改和删除触发器257
本章小结259
习题7260
第8章数据库存储结构与查询处理/264
8.1文件组织与记录组织265
8.1.1存储介质265
8.1.2存储访问266
8.1.3文件组织与文件中记录的组织267
8.2索引与散列272
8.2.1索引基本概念272
8.2.2顺序索引273
8.2.3B 树索引275
8.2.4散列279
8.3查询处理283
8.3.1查询处理过程283
8.3.2查询代价度量284
8.3.3选择运算285
8.3.4连接运算287
8.3.5其他运算294
8.3.6表达式计算295
8.4查询优化296
8.4.1查询优化实例296
8.4.2关系表达式转换297
8.4.3查询优化策略298
8.5物理数据库设计299
本章小结302
习题8306
第9章数据库安全性与完整性/308
9.1数据库安全性308
9.1.1数据库安全概述308
9.1.2SQL Server安全机制312
9.1.3触发器实现安全性319
9.2数据库完整性320
9.2.1数据库完整性概述320
9.2.2SQL Server完整性321
9.2.3使用规则和触发器实现完整性327
9.3数据库应用与安全设计329
9.3.1数据库安全性控制329
9.3.2数据库完整性控制331
9.3.3存储过程设计335
本章小节337
习题9338
第10章事务管理与恢复/340
10.1事务341
10.1.1问题背景341
10.1.2事务的概念342
10.1.3事务特性343
10.1.4事务并发执行与调度345
10.1.5事务调度及正确性准则347
10.2并发控制350
10.2.1基于封锁的并发控制方法350
10.2.2两阶段封锁协议352
10.3恢复与备份354
10.3.1故障分类及恢复策略354
10.3.2事务访问数据方式355
10.3.3基于日志的故障恢复策略357
10.3.4检查点359
10.3.5备份与介质故障恢复363
本章小结364
习题10366
第11章数据库应用开发/368
11.1数据库系统的体系结构369
11.1.1软件开发体系结构概述369
11.1.2C/S体系结构370
11.1.3B/S体系结构373
11.1.4C/S与B/S结构的结合375
11.1.5常用开发体系结构376
11.2数据库访问技术379
11.2.1ODBC API和ODBC库379
11.2.2MFC DAO381
11.2.3RDO382
11.2.4OLE DB382
11.2.5ADO384
11.2.6ADO.NET385
11.2.7JDBC389
11.2.8数据库访问技术小结391
11.3对象关系映射框架393
本章小结396
习题11397
第12章数据库技术前沿/399
12.1概述400
12.1.1新型数据库系统400
12.1.2新型数据管理技术401
12.2新型数据库系统401
12.2.1云原生数据库402
12.2.2分布式数据库407
12.2.3端边云数据库411
12.2.4人工智能原生数据库414
12.3新型数据管理技术419
12.3.1新硬件驱动的数据管理419
12.3.2智能化数据管理420
12.3.3多模态数据管理422
12.3.4湖仓一体架构423
习题12425
参考文献/426
|
內容試閱:
|
“数据库系统原理”课程于2020年被认定为首批“国家级线下一流本科课程”,这是该课程建设不断推进的结果。第一批“‘十二五’”普通高等教育本科国家级规划教材”“国家精品资源共享课配套教材”《数据库系统原理与设计》(第3版)和《数据库系统原理与设计实验教程》(第3版)于2017年出版。该套教材得到了数据库界教师和学生的认可,已被全国50余所高校选作教材,已累计印刷13次。为了更好地适应大数据时代对数据库课程的教学需求,我们从2022年下半年开始着手进行修订。本次修订仍然坚持“培养学生‘三会’数据库”的目标,即会设计数据库、会管理数据库、会开发数据库应用程序,强调数据库设计与应用能力的培养,着重培养学生应用建模能力,重点是数据库概念建模能力。
本次修订的主要内容有:
(1) 对全书中的所有核心概念进行了重新梳理,进一步明确了其含义,并给出了比较规范和清晰的定义或描述。
(2) 对第4、6两章涉及的大学选课系统、网上书店系统数据库设计实例,进一步优化和规范了对功能需求、数据需求、约束需求等的描述。一是增加了对系统总体目标需求的描述,即增加对系统的各种报表需求的描述,因为报表是系统的总体目标;二是重点关注了各部门的业务功能需求和数据需求分析,即该业务发生时所产生的各种单据及其数据需求的描述,在功能描述中弱化各基本实体集的维护功能(如学生记录的增、删、改)的描述;三是在大学选课系统中增加了专业教学计划管理等功能,在网上书店系统中在采购入库的基础上增加了仓库管理、配送出库、图书入库上架、图书出库下架和库存总账管理等功能;四是进一步规范了对约束需求的描述;五是进一步区分和规范了基本实体集与局部业务概念建模过程中对引入的依赖实体集、弱实体集和联系实体集的描述。
(3) 对全书的语言表达进行了进一步的优化,调整了部分内容的顺序,并对部分例题进行了适当的增、删或替换。
(4) 根据近几年来学术界和工业界数据库领域的研究进展以及数据库技术的发展趋势,对第12章进行了重写,突出了云计算、人工智能和新硬件等因素对数据库的影响。
(5) 将配套教材《数据库系统原理与设计实验教程》(第4版)中使用的平台升级为SQL Server 2019。
与其他教材相比,本书的主要特点如下。(1) 强化对关系数据库模式的理解,以模式导航图为工具,使学生深刻理解关系数据库逻辑模型,灵活掌握关系代数和SQL。
(2) 以案例为驱动,通过分析应用需求来介绍数据库建模的基本方法,着力培养学生应用建模的能力,重点是使学生深刻理解数据库概念模型,提高数据库设计能力。
(3) 涵盖了关系数据库物理存储结构、查询处理和查询优化等内容,这些内容一是有利于学生更好地理解关系数据库的物理模型,二是有利于学生更好地理解关系数据库管理系统(DBMS)的基本原理,三是有利于学生从底层的角度理解SQL查询。
(4) 从使用者的角度,以应用需求为驱动介绍数据库的安全性、完整性以及事务、并发和恢复等内容,使学生深刻理解关系数据库管理系统的基本原理。
(5) 增加数据库应用开发和数据管理技术前沿介绍,一方面增强学生的实践能力,另一方面让学生了解数据库的前沿和发展方向,为后续的数据库应用开发实践和进一步学习打下基础。
本次修订方案由万常选、廖国琼、吴京慧、刘喜平、刘爱红等讨论确定,万常选负责第1、2、4、5、6、8、10章的修订,其中第4、5、6、10章的修订经过了廖国琼的认真修改和审定,吴京慧负责第3、7、9章的修订,刘喜平负责第11、12章的修订。最后,万常选对全书进行了修改、补充和总纂。
在本书的编写和修订过程中,参阅了大量的参考书目和文献资料,在此向参考资料的作者表示衷心的感谢。
在整个编写和修订过程中,尽管我们一直怀着敬畏的心情、保持严谨的态度,也付出了辛勤的劳动,但限于水平,书中不足之处还是在所难免,敬请各位读者批评指正,并将您的宝贵意见反馈给我们。我们对您的厚爱致以崇高的敬意!
编者
2024年1月〖1〗数据库系统原理与设计(第4版)国家精品资源共享课“数据库系统及应用”于2014在“爱课程”网上线,已经3年多了。第一批“‘十二五’普通高等教育本科国家级规划教材”“国家精品资源共享课配套教材”《数据库系统原理与设计》(第2版)及配套教材《数据库系统原理与设计实验教程》(第2版)于2012年出版,也已近5年了。该套教材引起数据库界教师和学生的很大反响,已被全国50余所高校选作教材,4年多共印刷了9次。笔者所在学校针对“数据库系统原理”课程开展翻转课堂教学,从2013年试点到2015年全面实施也已经4年多了。为了更好地适应大数据时代对数据库课程的教学需求,我们从2016年下半年开始着手对本书进行修订。本次修订仍然坚持“培养学生‘三会’数据库”的目标,即会设计数据库、会管理数据库、会开发数据库应用程序,强调数据库设计与应用能力的培养,着重培养学生的应用建模能力,重点是数据库概念模型。第3版对章节进行了适当的调整,使得结构更加合理、可用性更强。
本次修订的主要内容包括:
(1) 对第4、6两章涉及的大学选课系统、网上书店系统数据库设计实例的数据库设计流程进行了重新梳理和调整,以便更好地指导学生开展数据库设计大作业的实践活动。重新梳理和调整后的数据库设计流程为:系统需求分析(需求概述和系统边界、主要业务处理流程、功能需求分析、数据需求分析、业务规则及完整性约束分析)→数据库概念设计(确定基本实体集及属性、主要业务局部概念建模、定义联系集及属性、设计完整ER模型、检查是否满足需求)→数据库逻辑设计及模式求精→数据库物理设计→数据库应用与安全设计。
(2) 将原第3章中的SQL数据定义与更新语言,第9章中的游标、存储过程和触发器等数据库编程的内容独立出来构成新版的第7章SQL数据定义、更新及数据库编程,并新增TSQL语言简介的内容,这样有利于提高学生的数据库编程能力。因此,新版的第3章集中介绍SQL,有利于学生深刻理解关系数据库逻辑模型,灵活掌握关系代数和SQL;第3版的第9章集中介绍数据库安全性与完整性,并深入地介绍触发器应用于数据库安全控制和复杂的用户自定义完整性约束。
(3) 对原第7、8章的内容进行了适当的压缩,并合并作为第3版的第8章数据库存储结构与查询处理。
(4) 删除了原书第12章Web数据库,新增了第12章数据管理技术前沿,主要内容包括:大数据的兴起、大数据处理平台和框架、数据库面临的挑战、NoSQL数据库、NewSQL数据库。设计这一章的目的是让学生了解数据管理技术的前沿,扩展学生的知识面。今后改版时,这一章的内容将与时俱进,不断更新。
(5) 将原第11.3节数据库应用开发实践的主要内容放到与本书配套的《数据库系统原理与设计实验教程》(第3版)中;考虑ASP开发技术已经过时,将原来的ASP设计实例改为JSP设计实例;第3版的第11.3节简单介绍了对象\\|关系映射框架。
(6) 调整了部分章节的内容和顺序,增加和调整了部分章节的例题和习题,对部分概念和文字进行了修改。
(7) 将配套教材《数据库系统原理与设计实验教程》(第3版)中使用的SQL Server 2005平台改为SQL Server 2014。
与其他教材相比,本书的主要特点如下。
(1) 强化对关系数据库模式的理解,以模式导航图为工具,使学生深刻理解关系数据库逻辑模型,灵活掌握关系代数和SQL。
(2) 以案例为驱动,通过分析应用需求来介绍数据库建模的基本方法,着力培养学生应用建模的能力,重点是使学生深刻理解数据库概念模型,提高数据库设计能力。
(3) 涵盖了关系数据库物理存储结构、查询处理和查询优化等内容。这些内容一是有利于学生更好地理解关系数据库的物理模型,二是有利于学生更好地理解关系数据库管理系统(DBMS)的基本原理,三是有利于学生从底层的角度理解SQL查询。
(4) 从使用者的角度,以应用需求为驱动介绍数据库的安全性、完整性以及事务、并发和恢复等内容,使学生深刻理解关系数据库管理系统(DBMS)的基本原理。
(5) 增加数据库应用开发和数据管理技术前沿介绍,一方面增强学生的实践能力,另一方面让学生了解数据库的前沿和发展方向,为后续的数据库应用开发实践和进一步学习打下基础。
本次修订方案由万常选、廖国琼、吴京慧、刘喜平、刘爱红等讨论确定,万常选负责第1、2、8章的修订,廖国琼负责第4、5、6、10章的修订,吴京慧负责第3、7、9章的修订,刘喜平负责第11、12章的修订。最后,万常选对全书的修订稿进行了修改、补充和总纂。
在本书的编写和修订过程中,参阅了大量的参考书目和文献资料,在此向参考资料的作者表示衷心的感谢。
在整个编写和修订过程中,尽管我们一直怀着敬畏的心情、保持严谨的态度,也付出了辛勤的劳动,但限于水平,书中不足之处仍然在所难免,敬请各位读者批评指正,并将您的宝贵意见反馈给我们。我们对您的厚爱致以崇高的敬意!
编者
2017年6月〖1〗数据库系统原理与设计(第4版)《数据库系统原理与设计》及配套教材《数据库系统原理与设计实验教程》于2009年出版后,得到了数据库界教师和学生的很大反响,已被全国40余所高校选作教材,于2010年12月获得江西省第四届普通高等学校优秀教材一等奖,并被江西省教育厅推荐参评普通高等教育“十二五”国家级规划教材。以该教材为基础的课程建设、教材建设和教学方法研究不断深入,我们于2010年6月完成了江西省高等学校教学改革研究课题“‘数据库系统及应用’课程的双主体教学模式与教学方法改革研究”,并于2010年12月获得江西省第12次优秀教学成果一等奖(成果名称: “数据库系统及应用”国家精品课程建设的探索与实践)。2011年,“‘数据库系统原理’课程探究式教学方法的探索与实践”立项为江西省高等学校教学改革研究课题。
本书第1版出版后,我们不断地收集来自教学一线的师生们的反馈。反馈意见认为,本书具有鲜明的特色,尤其是数据库设计的内容对于学习“如何设计数据库”有很大帮助,但是学生在实际分析及建模中仍然存在一些困惑,例如,复杂业务中如何在联系集和实体集之间取舍,如何标识联系集,如何处理多元联系,业务语义对E\\|R建模有什么影响等。针对这些问题,并带着自己的一些新的思考,我们着手对本书进行修订。本次修订仍然围绕“培养学生会‘用’数据库”的目标,进一步提升学生的概念建模能力,培养学生会“设计”数据库。此外,第2版章节更加合理,可用性更强。
本次修订的主要内容有:
(1) 对第4章数据库建模(实体联系模型)和第6章关系数据库设计实例(网上书店)进行了重写。通过引入实体集与联系集之间的依赖约束、多值联系等概念,将实体集分为基本实体集、弱实体集、依赖实体集和联系实体集4类,较好地解决了ER建模中经常遇到的一些困惑。
(2) 为了适用于不同课时、不同层次的开课需要,将部分章节的内容作为选讲内容,通过在章节前加标注。
(3) 调整了部分章节的顺序,增加和调整了部分章节的例题和习题,对部分概念和文字进行了修改。
(4) 将配套教材《数据库系统原理与设计实验教程》中使用的SQL Server 2000平台改为SQL Server 2005。
与其他教材相比,本书的主要特点如下。
(1) 强化对关系数据库模式的理解,以模式导航图为工具,使学生深刻理解关系数据库逻辑模型,灵活掌握关系代数和SQL。
(2) 以案例为驱动,通过分析应用需求来介绍数据库建模的基本方法,着力培养学生应用建模的能力,重点是使学生深刻理解数据库概念模型,提高数据库设计能力。
(3) 涵盖了关系数据库物理存储结构、查询处理和查询优化等内容,这些内容一是有利于学生更好地理解关系数据库的物理模型,二是有利于学生更好地理解关系数据库管理系统(DBMS)的基本原理,三是有利于学生从底层的角度理解SQL查询。
(4) 从使用者的角度,以应用需求为驱动介绍数据库的事务、并发、恢复和完整性、安全性等内容,使学生深刻理解关系数据库管理系统(DBMS)的基本原理。
(5) 增加数据库应用开发和Web数据库技术介绍,使学生能了解数据库常用访问方法和Web数据库的实现技术,为后续学习和数据库应用开发实践打下一定的基础。
本次修订由万常选执笔,廖国琼、吴京慧、刘喜平、刘爱红等参与了讨论,并对修改稿进行了审阅,提出了许多宝贵的建议和意见。
本书及配套的《数据库系统原理与设计实验教程》(第2版)是国家精品课程“数据库系统及应用”的建设教材,有配套的教学PPT(需要者请到清华大学出版社网站下载)和课程网站。本书可作为计算机相关专业本科生的数据库系统原理课程教材,也可供数据库爱好者自学和参考。
在本书的编写过程中,参阅了大量的参考书目和文献资料,在此向参考资料的作者表示衷心的感谢。同时,也对所有关心本书和帮助我们的老师和学生表示衷心的感谢。
限于水平,书中不足之处在所难免,敬请各位读者批评指正。对本书的意见请反馈给我们,谢谢。
编者
〖1〗数据库系统原理与设计(第4版)数据库系统是计算机系统的重要组成部分,是企业、机构、互联网乃至整个信息社会赖以运转的基础,在当今社会中扮演着越来越重要的角色。正是由于数据库具有重要的基础地位,数据库理论与技术教育已成为现代计算机科学和相关学科教育中的核心部分,所有计算机及其相关专业的学生都有必要掌握和熟悉数据库理论与技术。
通过多年的数据库课程教学,我们发现学生在学习数据库课程之后,仍然不会“用”数据库——不会设计数据库,不会管理数据库,不会开发数据库应用程序。带着这些问题,我们进行了一系列的数据库课程的教学改革探索与实践,并取得了一定的成绩,如“数据库系统及应用”于2007年获得国家精品课程立项。目前,虽然数据库教材很多,但是很难找到完全适合教学需要的教材。于是,我们决定动手编写一套让学生会“用”数据库的教材,一本“够用”的教材,这便是编写本书的初衷。本书虽然不一定能完全达到目标,但至少开始了有益的尝试。
数据库技术发展至今,已经相当成熟,相关知识博大精深。本书定位于面向计算机及其相关专业本科生的第一本数据库入门教材,在内容选择上颇费思量。在构思本书之前,本书作者一直在思考: 对于计算机及其相关专业的本科生来说,需要掌握哪些数据库知识?回答这个问题并不容易,这是因为数据库知识非常丰富,而且由于课时有限,学生不可能了解所有数据库知识。另外,不同用户在使用数据库时,他们的视角是不同的。数据库系统的用户大致可分为4类: 数据库管理员、数据库系统分析员、数据库设计人员、数据库应用程序员及终端用户。我们认为,计算机及其相关专业的学生既可能做数据库管理员,也可能成为系统分析员和数据库设计员,更可能是数据库应用程序员。因此,作为一本数据库入门教材,必须提供这些方面的知识,为学生以后的深入学习打下基础。
基于这些考虑,本书内容包括以下几个部分。
数据库系统基本概念(第1章)。该部分介绍了数据、数据管理、数据库、数据库管理系统和数据库系统等基本概念。同时,也介绍了数据模型、数据抽象、数据库模式等概念。
关系数据库基础(第2章和第3章)。第2章介绍了关系模型(关系数据结构、关系操作和关系完整性约束条件)以及关系代数;第3章介绍了关系数据库的标准语言——SQL,包括数据定义DDL、数据控制DCL和数据操纵DML。
关系数据库设计(第4章~第6章)。第4章介绍了数据库建模方法,包括实体联系模型基本概念、概念模型设计过程以及如何将ER模型转换为关系模型;第5章介绍了关系数据库设计理论,着重讲述了函数依赖及规范化理论;第6章通过一个实例演示了关系数据库设计过程。
关系数据库管理系统(第7章~第10章)。第7章介绍了关系数据库物理存储结构,包括文件组织、记录组织、索引技术以及物理数据库设计;第8章介绍了查询处理技术,包括查询处理过程、各种关系操作算法以及查询优化技术;第9章讲述了数据库完整性和安全技术,包括数据库安全性、完整性的基本概念和措施,游标、存储过程和触发器,以及应用与安全设计;第10章阐述了事务管理和恢复相关技术。
数据库应用开发(第11章和第12章)。第11章介绍了数据库应用系统的体系结构、常用数据库访问技术和数据库应用开发技术;第12章介绍了Web数据库基本概念,讨论了Web数据库访问技术,并介绍了XML数据库基本概念。
与其他教材相比,本书的主要特点如下。
(1) 强化对关系数据库模式的理解,以模式导航图为工具,使学生深刻理解关系数据库查询原理,灵活掌握关系代数和SQL。
(2) 以案例为驱动,通过分析应用需求来介绍数据库建模的基本方法,使学生深刻理解关系数据库设计思想,提高数据库设计能力。
(3) 增加关系数据库物理存储结构、查询处理和查询优化等内容,一是有利于学生从底层的角度理解SQL查询,二是有利于学生更好地理解关系数据库的物理设计,三是有利于学生更好地理解关系数据库的优点和缺点。该部分内容可根据授课对象的不同有选择地教学。
(4) 从使用者的角度,以应用需求为驱动介绍数据库的事务、并发、恢复和完整性、安全性等内容。
(5) 增加数据库应用开发和Web数据库技术介绍,使学生能了解数据库常用访问方法和Web数据库的原理和实现技术,为后续学习和数据库应用开发实践打下一定的基础。
本书由万常选、廖国琼、吴京慧和刘喜平编写,其中,第1、2、7、8章由万常选执笔,第4、5、6、10章及7.6节、9.6节由廖国琼执笔,第3、9章及11.1节由吴京慧执笔,第11、12章由刘喜平执笔。万常选提出本书的编写大纲,并对全书的初稿进行了修改、补充和总纂。
本书及配套的《数据库系统原理与设计实验教程》是国家精品课程“数据库系统及应用”的建设教材,有配套的电子课件和教学网站(http://skynet.jxufe.edu.cn/jpkc/sjk),可作为计算机相关专业本科生的数据库系统原理课程教材,也可供数据库爱好者自学和参考。
在本书的编写过程中,参阅了大量的参考书目和文献资料,在此向参考资料的作者表示衷心的感谢。
由于作者学识浅陋,书中不足之处在所难免,敬请各位读者批评指正。
编者
|
|