本书以数据库应用系统的生存期模型为主线,从数据库需求分析、数据库设计、数据库标准语言SQL、数据库实现、数据库测试、数据库维护、数据库应用系统开发实践、关系数据库理论等方面阐述数据库课程的理论与实践教学内容,并附有实验方案和课程设计指导。本书主要特色有两个。一是体系结构新颖、内容完整:数据库需求分析部分内容新颖且完整,数据库测试、数据库应用系统开发部分分别独立成章;学生掌握本书内容后,不需学习管理信息系统或软件工程等后续课程就会运用数据库技术解决实际问题。二是素材新、工程背景强:除经典案例外,本书的不少例题、习题的素材来自于作者们的科研实践;本书特别注意选取一些现实生活中与数据库相关的热点问题素材,同时注意选取嵌入式系统应用背景素材。
随着大数据、互联网与移动计算等产业的发展,数据库的应用越来越广泛,数据库管理系统与数据库应用系统开发工具也不断升级换代,数据库课程的教学也必须与之适应。本书就是为了顺应以上相关技术与应用的发展,满足高等学校相关专业(如物联网工程、网络工程、自动化、电气工程及其自动化、计算机科学与技术、软件工程、机械设计制造及其自动化、信息工程)本科生教学需要而修订的。
本次修订继续保持第1版的编写特色,体系结构新颖、内容完整、素材新、工程背景强、概念清楚、重点突出、叙述流畅、通俗易懂,力图为读者提供较好的学习体验。
本次修订主要是内容更新,对第5章、第8章、第11章的内容进行了大幅度更新,其他章节进行了局部内容更新。书中带有*号的章节为选修内容,各高校根据专业需要自行决定是否列为课堂教学内容。
本书第1章、第2章2.1~2.10节、第6章由蔡延光编写,第2章2.11节、第3章、第4章、第10章、第11章由黄永慧编写,第7章、第9章由邢延编写,第5章、第8章由张钢编写。全书由蔡延光统稿。
衷心感谢章云教授、程良伦教授、王钦若教授、刘治教授、彭世国教授、鲍芳教授、唐平教授、何小敏副教授、黄英副教授对本书修订工作给予的大力支持和帮助。
由于作者水平有限,本书肯定存在不少的缺点和不足,欢迎专家和读者批评指正。
编者数据库技术是计算机科学技术中发展快、应用广泛的领域之一。数据库应用系统在我们日常生活和工作中随处可见,如生产管理系统、销售管理系统、医院门诊管理系统、手机短信管理系统、图书管理系统、学生成绩管理系统等。数据库技术是大学本科相关专业的专业基础课或专业选修课。本书就是针对高等学校相关专业(如网络工程、自动化、电气工程及其自动化、机械设计制造及其自动化、信息工程)本科教学要求编写的。
本书以数据库应用系统的生存期模型为主线,从数据库需求分析、数据库设计、数据库标准语言SQL、数据库实现、数据库测试、数据库维护、数据库应用系统开发实践、关系数据库理论等方面阐述数据库课程的理论与实践教学内容,并附有实验方案和课程设计指导。本书主要特色有两个:一是体系结构新颖、内容完整,数据库需求分析部分内容新颖且完整,数据库测试、数据库应用系统开发部分分别独立成章;学生掌握本书内容后,不需学习管理信息系统或软件工程等后续课程就会运用数据库技术解决实际问题。二是素材新、工程背景强:除经典案例外,本书的不少例题、习题的素材来自作者们的科研实践;本书特别注意选取一些现实生活中与数据库相关的热点问题素材,同时注意选取嵌入式系统应用背景素材。
全书共11章:第1章介绍了数据库系统基础知识,第2章介绍数据库需求分析,第3章介绍数据库设计,第4章介绍关系数据库的SQL语言,第5章介绍数据库实现,第6章介绍数据库测试,第7章介绍数据库维护,第8章介绍数据库应用系统开发,第9章介绍关系数据库理论,第10章及第11章分别为本书配套实验及课程设计的要求及实施内容。
本书第1章、第2章2.1~2.10节、第6章由蔡延光编写,第2章2.11节、第3章、第4章、第10章、第11章由黄永慧编写,第7章、第9章由邢延编写,第5章、第8章由张钢编写。全书由蔡延光统稿。
在本书撰写和出版过程中,章云教授、王钦若教授、程良伦教授、唐平教授、何小敏副教授、刘治副教授、鲍芳副教授、黄英副教授对本书的体系结构和内容取舍等提出了许多建设性意见;研究生丁志勇、李永生、林灼强、程明君、魏明、张敏捷、宋康等做了一些有益的工作;机械工业出版社贡克勤老师为本书的编辑出版付出了很多心血。作者对他们的支持和帮助表示诚挚的谢意。
由于作者水平有限,本书肯定存在不少的缺点和不足,欢迎专家和读者批评指正。
编者
第2版前言
第1版前言
第1章数据库系统概述
11数据库系统的基本概念
111信息的定义与特征
112数据的定义与特征
113数据类型
114数据库及其特点
115数据库管理系统
116数据库系统
12数据库技术的发展历程
121人工管理阶段
122文件系统阶段
123数据库系统阶段
13数据库应用系统的生存期模型
131数据库应用系统的生存期
132瀑布模型
14数据库技术的发展趋势
习题
第2章数据库需求分析
21概述
211数据库需求分析的定义
212数据库需求分析的内容
213数据库需求分析的原则
214数据库需求分析的步骤
215数据库系统需求分析的方法和工具
22数据库需求调查
221数据库需求调查的内容
222数据库需求调查的原则
223数据库需求调查的方法
23数据字典
231数据字典的基本概念
232数据项
233数据结构
234外部实体
235数据流
236数据存储
237处理逻辑
238数据字典编制的结构化方法
24信息分类与编码
241信息分类
242信息编码
25数据定义分析
26数据操纵分析
261数据更新分析
262数据查询分析
263数据统计和排序分析
27数据完整性分析
271数据项取值范围
272关键字
273数据关联
28数据安全性分析
281数据安全的概念
282数据访问权限
283数据加密
29并发处理分析
210数据库性能分析
211ER图
2111ER图的基本概念
2112ER图的设计原则
2113ER图的设计方法
2114ER图的设计步骤
习题
第3章数据库设计
31概述
311数据库设计的定义
312数据库设计的任务
313数据库设计的原则
314数据库设计的方法
315数据库设计的步骤
32关系数据库的基本概念
321数据模型概述
322关系模型
33关系操作
331关系操作概述
332关系代数
333存储过程
34完整性设计
341完整性约束
342完整性设计中应注意的问题
343完整性设计的原则
344触发器
35安全性设计
351数据库安全控制措施
352访问权限设计
353加密算法设计
36索引设计
361索引的概念
362索引的作用
363索引的设计原则
37事务与并发控制
371事务
372并发控制
38ER图转换
381实体集向关系模式的转换
382联系集向关系模式的转换
383应用实例
39*层次数据库与网状数据库
391层次数据库
392网状数据库
习题
第4章数据库标准语言SQL
41SQL概述
411SQL简介
412SQL的主要功能
413SQL的主要特点
414SQL语法
42数据定义
421数据库
422基本表
423索引
43数据查询
431概述
432简单查询
433连接查询
434使用SQL函数查询
435分组查询
436嵌套查询
437集合查询
44数据更新
441插入数据
442修改数据
443删除数据
45视图
451定义视图
452删除视图
453查询视图
454更新视图
46数据控制
461授权
462收权
463拒绝访问
47嵌入式SQL
471嵌入式SQL概述
472不用游标的SQL
473使用游标的SQL
48存储过程的创建与维护
49触发器的创建与维护
491定义触发器
492修改触发器
493删除触发器
习题
第5章数据库实现
51概述
52主流DBMS
521Microsoft SQL Server
522MySQL
523SQLite
524Oracle
525Sybase
526DB2
527Informix
528Access
53Microsoft SQL Server 2012
531Microsoft SQL Server 2012的安装与使用
532SQL Server Management Studio
习题
第6章数据库测试
61概述
611数据库测试的定义
612数据库测试的原则
613数据库测试的方法与工具
614数据库测试的步骤
615数据库测试输出结果的展现
62测试用例设计
621白盒测试的测试用例设计
622黑盒测试的测试用例设计
63数据库模式测试
631基本表数据结构测试
632数据库完整性测试
633视图测试
64数据库功能测试
641数据定义功能测试
642数据操纵功能测试
643数据库安全性测试
644并发处理测试
65数据库性能测试
651数据库性能测试的概念
652影响数据库性能的因素
66数据库调试
661数据库调试的原则
662数据库调试的步骤
663数据库调试的方法
习题
第7章数据库维护
71概述
711数据库维护的定义
712数据库维护的任务
713数据库维护的原则
714数据库维护的方法
715数据库维护的步骤
72运行日志
721日志文件的格式和内容
722日志文件的作用
723日志文件的使用
724日志文件的维护
73数据库故障及其排除
731故障的种类
732故障的排除方法
74数据库备份与恢复
741