《数据库原理及应用》教材是根据教育部制订的关于计算机科学与技术及相关专业的培养目标,突出对理论知识的应用和实践的动手能力的培养,使基础理论的教学最终以应用为目的。本书在对理论的掌,握的基础上,侧重于强化理论知识的应用,系统完整地介绍了数据库系统的理论及应用系统的开发知识。讲解的内容由浅人深,易于理解,文字表达简练清晰、通俗易懂。其中应用部分以VisualFoxPro 6.0为开发I具。全书共分14章,主要介绍数据库系统结构、数据模型、关系数据库、关系代数和关系演算、查询优化、SQL语言、关系依赖、数据库的设计和管理、VisualFoxPro 6.0的数据表的操作,还介绍了查询和视图的创建、编程基础、表单和控件的使用、报表和菜单的设计及应用系统的连编和发布。各章后均附有内容小结及各种习题,便于课堂组织教学和知识的巩固。
本书可作为高等院校计算机科学与技术专业及相关专业的本科教材,也可作为软件水平考试、计算机等级考试的参考书。对于数据库开发人员来说也是一本不可多得的参考书。
第1章数据库概述
1.1数据库技术的发展
1.1.1信息、数据与数据处理
1.1.2数据管理技术的发展与数据库技术的产生
1.1.3数据库技术的研究领域
1.2数据库系统结构
1.2.1数据库系统中模式的概念
1.2.2数据库系统的三级模式结构
1.2.3数据库的二级映像与数据独立性
1.3数据库系统组成
1.3.1数据库系统的组成
1.3.2数据库系统的分类
1.4数据模型
1.4.1数据模型的概念
1.4.2数据模型的要素
1.4.3概念模型——E-R模型
1.4.4常用的数据结构模型
1.5数据库管理系统
1.5.1DBMS的主要功能
1.5.2DBMS的组成
1.5.3用户访问数据库的过程
小结
习题
第2章关系数据库
2.1关系数据库与关系模型
2.1.1基本概念
2.1.2关系模型
2.1.3关系的三类完整性规则
2.2关系的形式定义
2.2.1笛卡儿积与关系
2.2.2关系模型的优点
2.2.3E-R模型向关系模型的转换
2.3关系运算
2.3.1关系代数的五种基本运算
2.3.2关系代数的组合运算
2.3.3关系代数的外连接运算
2.3.4关系代数运算举例
2.3.4元组关系演算
2.4查询优化
2.4.1关系代数表达式的优化问题
2.4.2关系代数表达式的等价变换规则
2.4.3关系代数表达式的优化算法
2.5关系数据库的规范化理论
2.5.1函数依赖
2.5.2规范化
2.5.3关系模式分解
小结
习题
第3章数据库的标准语言SQL
3.1SQL概述
3.1.ISQL语句的特征
3.1.2SQL的基本组成
3.2数据定艾
3.2.1创建表(CREATETABLE)
3.2.2修改表和删除表
3.2.3定义和删除索引
3.2.4定义、删除视图
3.3数据查询
3.3.1SELECT语句的基本结构
3.3.2简单查询
3.3.3连接查询
3.3.4子查询与聚集函数
3.3.5分组查询
3.3.6更名运算
3.3.7字符串操作
3.3.8集合操作
3.3.9视图的查询和更新
3.4数据更新
3.4.1插入语句
3.4.2删除语句
3.4.3修改语句
3.5SQL的完整性控制
3.5.1主键约束PRIMARYKEY
3.5.2外键约束FOREIGNKEY
3.5.3属性值上的约束
3.5.4全局约束CREATEASSERTIONS
3.6SQL中的触发器
3.6.1触发器的组成和类型
3.2.2创建触发器
3.7嵌入式SQL
3.7.1SQL与宿主语言接口
3.7.2动态SQL
小结
习题
第4章数据库设计
4.1数据库设计的步骤
4.1.1数据库应用系统的生命期
4.1.2数据库设计的一般策略
4.1.3数据库设计的步骤
4.2需求分析
4.2.1需求分析的任务和目标
4.2.2需求分析的方法和步骤
4.3概念结构设计
4.3.1概念结构设计策略与方法
4.3.2用E-R方法建立概念模型
4.4逻辑结构设计
4.4.1E-R图向关系模式的转换
4.4.2关系模式的规范化
4.4.3确定完整性约束
4.4.4用户视图的确定
4.5数据库的物理设计
4.6数据库的实施和维护
4.6.1数据库实施
4.6.2数据库维护
小结
习题
第5章数据库的管理
5.1数据库的安全控制
5.1.1概述
5.1.2用户标识和鉴别
5.1.3访问控制
5.2数据库的恢复技术
5.2.1事务
5.2.2备份
5.2.3恢复
5.3数据库的并发控制
5.3.1事务的调度
5.3.2并发操作的问题
5.3.3加锁
5.3.4活锁与死锁
5.3.5两段锁协议
小结
习题
第6章VisualFoxPro6.0简介
6.1VisualFoxPro6.0概述
6.1.1VisualFoxPro6.0的常用的文件类型
6.1.2VisualFoxPro6.0的开发环境
6.2VisualFoxPro6.0的安装
6.3VisualFoxPro6.0的启动与退出
6.3.1VisualFoxPro6.0的启动
6.3.2VisualFoxPro6.0的退出
6.4VisualFoxPro6.0的窗口界面
6.4.1系统菜单栏
6.4.2工具栏
6.4.3命令窗口
6.4.4状态栏
6.5VisualFoxPro6.0辅助设计工具
6.5.1VisualFoxPro向导
6.5.2VisualFoxPro设计器
6.5.3VisualFoxPro生成器
6.6项目管理器
6.6.1创建项目
6.6.2项目管理器界面
6.6.3添加与移去项目中的文件
6.6.4修改与浏览项目中的文件
6.6.5项目管理器的定制
6.7VisualFoxPro命令子句和书写规则
小结
习题
第7章数据表与数据库
7.1数据类型
7.2数据表的创建
7.2.1数据表的概念
7.2.2创建数据表
7.2.3打开与关闭表
7.2.4修改与显示表的结构
7.2.5索引的建立和应用
7:3表的操作
7.3.1数据的录入
7.3.2记录的定位
7.3.3记录的显示
7.3.4记录的修改
7.3.5记录的删除
7.3.6数据的查询
7.3.7数据的统计
7.3.8多工作区的操作
7.4数据库的操作
7.4.1数据库的创建
7.4.2建立表之间的关系
7.4.3数据字典
小结
习题
第8章查询与视图
8.1建立查询
8.1.1使用辅助工具创建查询
8.1.2使用SELECT—SQL语句建立查询
8.1.3运行查询
8.2使用视图处理数据
8.2.1本地视图的建立
8.2.2建立远程视图及远程数据连接
8.2.3利用视图更改数据
小结
习题
第9章VisualFoxPFo6.0编程基础
9.1数据容器
9.1.1常量
9.1.2内存变量
9.1.3数组
9.1.4字段变量
9.1.5系统变量
9.1.6对象
9.2操作符与表达式
9.2.1操作符
9.2.2表达式
9.2.3函数
9.3程序文件
9.3.1命令文件的建立
9.3.2命令文件的运行
9.3.3程序的书写规则
9.4控制语句
9.4.1输入输出语句
9.4.2条件分支语句
9.4.3循环语句
9.5过程和函数
9.5.1建立过程或函数
9.5.2调用过程或函数
9.5.3检验参数
9.5.4创建存储过程
9.6VisualFoxPro的编程机制
9.6.1VisualFoxPro6.0与面向对象技术
9.6.2VisualFoxPro的类与对象
9.6.3面向对象设计方法的实现
小结
习题
第10章表单与控件
10.1表单概述
10.1.1表单
10.1.2表单设计器
10.1.3数据环境设计器
10.2简单表单的创建
10.2.1利用表单向导创建简单的表单
10.2.2利用“表单设计器”创建简单的表单
10.2.3利用表单向导创建一对多表单
10.3定制表单
10.3.1操作表单中的控件
10.3.2美化界面
10.4表单属性的设置
10.4.1使用“属性窗口”设置表单的属性
10.4.2使用程序设置表单的属性
10.4.3添加新的属性和方法
10.5表单的管理
10.5.1表单的保存
10.5.2表单的运行
10.5.3表单的隐藏和释放
10.5.4表单的参数传递
10.6控件及相关操作
10.6.1标签
10.6.2命令按钮和命令按钮组
10.6.3文本框
10.6.4列表框和下拉列表框
10.6.5复选框
10.6.6表格
10.6.7编辑框
10.6.8微调
10.6.9选项组
10.6.10计时器
10.6.11图像
10.6.12页框
10.7应用表单的设计
10.7.1系统登录表单的设计
10.7.2数据浏览与维护表单的设计
小结
习题
第11章菜单与自定义工具栏
11.1菜单系统的规划原则
11.2用“菜单设计器”创建菜单系统
11.2.1设计用户菜单界面
11.2.2给菜单项指定工作
11.2.3定制菜单系统
11.2.4测试和调试菜单系统
11.2.5创建快捷菜单
11.3用编程方式设计菜单
11.4自定义工具栏
11.4.1定义工具栏类
11.4.2向自定义工具栏中添加对象
11.4.3在表单集中添加自定义工具栏
11.4.4协调菜单与自定义工具栏
11.4.5创建与工具栏按钮协调的菜单
小结
习题
第12章报表与标签设计
12.1创建报表
12.1.1利用“报表向导”创建报表
12.12创建‘陕速报表
12.1.3利用“报表设计器”创建报表
12.2设计报表
12.2.1报表带区
12.2.2报表的数据环境
12.2.3报表控件
12.2.4调整报表布局
12.2.5设置报表页面
12.3建立标签
12.3.1用“标签向导”创建标签
12.3.2用“标签设计器”创建标签
12.4报表和标签的预览与打印
12.4.1预览报表结果
12.4.2打印报表和标签
小结
习题
第13章应用程序连编与发布
13.1设计主文件
13.1.1设置应用程序起始点
13.1.2建立主文件
13.2添加文件到项目中
13.2.1添加文件到项目中
13.2.2设置文件的“包含”或“排除”
13.3连编应用程序
13.3.1重新连编项目
13.3.2生成应用程序或者可执行文件
13.3.3生成动态链接库
13.4生成可发布的应用程序
13.4.1发布应用程序的步骤
13.4.2发布应用程序前的准备
13.4.3定制要发布的应用程序
13.4.4创建发布磁盘
小结
习题
第14章学生成绩管理系统
14.1应用系统的总体设计
14.1.1应用系统的开发过程
14.1.2应用系统的总体设计
14.2本系统的详细设计与实现
14.2.1系统的组成
14.2.2主程序的实现
14.2.3主要表单的设计与实现
14.2.4报表的设计与实现
14.3应用系统的组装
小结
习题
参考文献
《数据库原理及应用》课程是计算机科学与技术专业的专业课程之一,根据教育部制订的关于计算机科学与技术专业的培养目标及教学大纲的要求,以培养生产、建设、管理、服务一线所需的技术应用性人才为目标,突出对理论知识的应用和实践的动手能力的培养。目前本科生的数据库教材,一般均为仅介绍数据库原理,没有与具体的一个数据库相结合,从而使理论与实践脱离,致使学生感觉学习本课程没有什么用处,削弱了学习的积极性。同时,在具体的数据库开发过程中,不能将学过的数据库理论知识应用到开发的实践中,造成学用脱节。为解决以上问题,我们编写了本教材,力求将理论与实践相结合。由于VisualFoxPro既可以作为开发语言,又可以作为数据库管理工具,具有一定的代表性和应用的群体,因此本书选用VisualFoxPro作为数据库的实践内容,从掌握概念、强化应用为教学重点的角度出发,系统地、完整地介绍了数据库系统的理论及应用系统的开发知识。通过这门课程的学习,使学生掌握数据库的基本理论,熟悉数据库设计、开发的基本程序。
本书将数据库的理论知识,通过VisualFoxPro 6.0数据库开发工具,以一个实例为主线来完成数据库知识的学习;在内容讲解上始终贯穿着由浅入深、化难为易的宗旨及边学习边实践的原则,注重培养学生应用知识的能力和动手能力;在文字表达上力求简练清楚、概念清晰、通俗易懂和图文并茂;每一章后面均附有小结与习题,便于学生加深理解内容、巩固知识和提高效率;最后给出一个完整的应用程序实例,以促进学生对整个教材的理解和应用。
全书共分14章。主要内容如下:第1章介绍了数据库技术的发展、数据库系统结构、系统组成、数据模型、数据库管理系统;第2章介绍了关系数据库与关系模型、查询优化、规范化理论;第3章介绍了标准语言SQL;第4章介绍了数据库设计的步骤、需求分析、概念结构设计、逻辑结构设计、数据库的物理设计、数据库的实施和维护;第5章介绍了数据库的安全控制、恢复技术、并发控制;第6章介绍了VisualFoxPro运行环境、安装方法、经常使用的各类文件的扩展名及其功用、窗口界面、Visual FoxPro 6.0辅助设计工具、项目管理器的概念和功能及有关的各种操作;第7章介绍了Visual FoxPro 6.0的工作方式、数据类型、数据表的创建、表的操作、数据库的操作及多工作区的操作;第8章介绍了使用查询与视图处理数据;第9章介绍了数据容器、操作符与表达式、控制语句、过程和函数及VisualFoxPro的编程机制;第10章介绍了表单、控件的使用与管理;第11章介绍了菜单的设计、自定义工具栏使用方法;第12章介绍了报表和标签的设计与实现;第13章介绍了应用系统的连编和发布;第14章介绍了一个管理系统的设计与实现。
本书由张凤琴主编,张水平副主编。书中第1-5章由王亚平同志编写;第6章、第7章由张水平同志编写;第8~10章由张凤琴同志编写;第11-13章由蒋华同志编写;第14章由张青凤同志编写。张凤琴和张水平同志制定了编写大纲,最后由张凤琴、张水平和蒋华同志对全文进行通审和定稿。
在本书的编写过程中,西北工业大学李伟华教授、空军工程大学刘守义教授、殷肖川副教授和禄乐滨副教授对本书的编写提出了宝贵的意见;杨帆和陈应祥同志对本书的代码进行了调试;朱涛和王东对本书的图进行了加工处理。编者在此对他们表示衷心的感谢。
本教材由高等院校具有丰富教学和开发经验的一线教师和科研人员精心设计和撰写,在透彻分析数据库理论的同时,强调与VisualFoxPro相结合,以提高学生解决具体问题的能力。本书将充分体现实践要求与教学目标相统一的原则。
由于作者水平有限,书中错误和疏漏之处在所难免,敬请读者指正,以便再版时纠正,编写人员在此表示深深的谢意。