2.85k likes | 3.08k Views
Visual FoxPro 应用基础与面向对 象程序设计教程. 侯少林 讲解. 前言. Visual FoxPro 6.0 关系数据库管理系统是新一代数据库管理系统的杰出代表,以它强大的性能、完整而又丰富的工具、超高速的速度、极其友好的界面,以及完备的兼容性等特点,吸引众多的国内外用户,倍受广大用户的欢迎。. Visual FoxPro 6.0 及它的中文版,是可运行于 Windows 95 和 Windows NT 平台的数据库开发系统 , 它不仅可以简化数据库管理 , 而且能使应用程序的开发流程更为合理。
E N D
VisualFoxPro 应用基础与面向对 象程序设计教程 侯少林 讲解
前言 Visual FoxPro 6.0 关系数据库管理系统是新一代数据库管理系统的杰出代表,以它强大的性能、完整而又丰富的工具、超高速的速度、极其友好的界面,以及完备的兼容性等特点,吸引众多的国内外用户,倍受广大用户的欢迎。
Visual FoxPro 6.0 及它的中文版,是可运行于Windows 95和Windows NT平台的数据库开发系统,它不仅可以简化数据库管理,而且能使应用程序的开发流程更为合理。 Visual FoxPro 6.0 使组织数据、定义数据库规则和建立应用程序等工作变得简单易行。用户利用可视化的设计工具和向导,可以快速创建表单,查询和打印报表。
Visual FoxPro 6.0 还提供了一个集成化的系统开发环境,它不仅支持过程式编程技术,而且在语言方面作了强大的扩充,支持面向对象可视化编程技术。由于Visual FoxPro 6.0 拥有功能强大的可视化程序设计工具,使程序设计简单易行。
本课程是根据教育部提出的非计算机专业计算机基础教学三个层次要求,并配合全国计算机等级考试“Visual FoxPro 二级”考试大纲的知识要点,以Visual FoxPro 6.0 为主要内容,介绍关系数据库管理系统基础理论及应用系统开发知识。不仅介绍数据库基础理论,介绍了Visual FoxPro 6.0 的基本操作;而且介绍面向对象可视化编程、应用系统开发的方法、步骤。
目录 第一章数据库基础理论 第二章Visual FoxPro系统概述 第三章Visual FoxPro基础 第四章表操作 第五章索引及创建索引 第六章创建数据库 第七章视图与查询 第八章SQL关系数据库查询语言 第九章创建项目 第十章程序设计基础 第十一章面向对象可视化编程基础 第十二章表单设计及运行 第十三章实用表单的设计 第十四章创建报表 第十五章菜单设计 第十六章小型系统开发实例
第一章 数据库基础理论 返回目录
本章要点 • 信息、数据和数据处理 • 数据模型 • 数据库系统 • 关系数据库及其设计 返回目录
1.1 信息、数据和数据处理 1.1.1 信息与数据 信息(Information)是客观事物属性的反映。它所反映的是关于某一客观系统中某一事物的某一方面属性或某一时刻的表现形式。 通俗地讲,信息是经过加工处理并对人类客观行为产生影响的事物属性的表现形式。 数据(Data)是反映客观事物属性的记录,是信息的载体。对客观事物属性的记录是用一定的符号来表达的,因此说数据是信息的具体表现形式。 上一页 下一页 要 点
数据与信息在概念上是有区别的。从信息处理角度看,任何事物的属性都是通过数据来表示的,数据经过加工处理后,使其具有知识性并对人类活动产生决策作用,从而形成信息。数据与信息在概念上是有区别的。从信息处理角度看,任何事物的属性都是通过数据来表示的,数据经过加工处理后,使其具有知识性并对人类活动产生决策作用,从而形成信息。 从计算机的角度看,数据泛指那些可以被计算机接受并能够被计算机识别处理的符号。 总之,信息是有用的数据,数据是信息的表现形式,信息是通过数据符号来传播的。 上一页 下一页 要 点
1.1.2 数据处理 数据处理也称为信息处理。所谓数据处理,实际上就是利用计算机对各种类型的数据进行处理。它包括对数据的采集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列操作过程。 数据处理的目的是从大量的、原始的数据中获得人们所需要的资料并提取有用的数据成份,作为行为和决策的依据。 上一页 下一页 要 点
人工管理阶段出现在计算机应用于数据管理的初期。由于没有必要的软件、硬件环境的支持,用户只能直接在裸机上操作。应用程序中不仅要设计数据的逻辑结构,还要阐明数据在存储器上的存储地址。人工管理阶段出现在计算机应用于数据管理的初期。由于没有必要的软件、硬件环境的支持,用户只能直接在裸机上操作。应用程序中不仅要设计数据的逻辑结构,还要阐明数据在存储器上的存储地址。 在这一管理方式下,应用程序与数据之间相互结合不可分割,当数据有所变动时程序则随之改变,独立性差;另外,各程序之间的数据不能相互传递,缺少共享性,因而这种管理方式既不灵活,也不安全,编程效率较差。 上一页 下一页 要 点
文件管理阶段即把有关的数据组织成一种文件,这种数据文件可以脱离程序而独立存在,由一个专门的文件管理系统实施统一管理。文件管理阶段即把有关的数据组织成一种文件,这种数据文件可以脱离程序而独立存在,由一个专门的文件管理系统实施统一管理。 在这一管理方式下,应用程序通过文件管理系统对数据文件中的数据进行加工处理。应用程序与数据文件之间具有一定的独立性,因此比手工管理方式前进了一步。 但是,数据文件仍高度依赖于其对应的程序,不能被多个程序所共享。由于数据文件之间不能建立任何联系,因而数据的通用性仍然较差,冗余量大。 上一页 下一页 要 点
数据库系统管理阶段即对所有的数据实行统一规划管理,形成一个数据中心,构成一个数据“仓库”。数据库系统管理阶段即对所有的数据实行统一规划管理,形成一个数据中心,构成一个数据“仓库”。 在这一管理方式下,应用程序不再只与一个孤立的数据文件相对应,可以取整体数据集的某个子集作为逻辑文件与其对应,通过数据库管理系统实现逻辑文件与物理数据之间的映射。 上一页 下一页 要 点
在数据库系统管理的系统环境下,应用程序对数据的管理和访问灵活方便,而且数据与应用程序之间完全独立,使程序的编制质量和效率都有所提高;由于数据文件间可以建立关联关系,数据的冗余大大减少,数据共享性显著增强。在数据库系统管理的系统环境下,应用程序对数据的管理和访问灵活方便,而且数据与应用程序之间完全独立,使程序的编制质量和效率都有所提高;由于数据文件间可以建立关联关系,数据的冗余大大减少,数据共享性显著增强。 上一页 下一页 要 点
1.2 数据模型 客观事物的这种普遍联系性,决定了作为事物属性记录符号的数据与数据之间也存在着一定的联系性。具有联系性的相关数据总是按照一定的组织关系排列,从而构成一定的结构,对这种结构的描述就是数据模型。 从理论上讲,数据模型是指反映客观事物及客观事物间联系的数据组织的结构和形式。客观事物是千变万化的,表现各种客观事物的数据结构和形式也是千差万别的,尽管如此,它们之间还是有其共同性的。 上一页 下一页 要 点
1.2.1 层次模型 层次模型(Hierarchical Model)表示数据间的从属关系结构,是一种以记录某一事物的类型为根结点的有向树结构。 其主要特征如下: 仅有一个无双亲的根结点。 根结点以外的子结点,向上仅有一个父结点,向下有若干子结点。 上一页 下一页 要 点
1.2.2 网状模型 网状模型(Network Model)是层次模型的扩展,它表示多个从属关系的层次结构,呈现一种交叉关系的网络结构。网状模型是以记录为结点的网络结构。 其主要特征如下: 有一个以上的结点无双亲。 至少有一个结点有多个双亲。 上一页 下一页 要 点
1.2.3 关系模型 关系模型(Relational Model)的所谓“关系”是有特定含义的。广义地说,任何数据模型都描述一定事物数据之间的关系。 关系模型的所谓“关系”虽然也适用于这种广义的理解,但同时又特指那种虽具有相关性而非从属性的平行的数据之间按照某种序列排列的集合关系。 上一页 下一页 要 点
关系模型的主要特点有: (1) 关系中每一分量不可再分,是最基本的数据单位; (2) 每一竖列的分量是同属性的,列数根据需要而设,且各列的顺序是任意的; (3) 每一横行由一个个体事物的诸多属性构成,且各行的顺序可以是任意的; (4) 一个关系是一张二维表,不允许有相同的属性名,也不允许有相同的元组。 上一页 下一页 要 点
1.3 数据库系统 1.3.1 数据库 数据库(Data Base)是数据库系统的核心和管理对象。 所谓数据库,就是以一定的组织方式将相关的数据组织在一起,存放在计算机外存储器上形成的,能为多个用户共享的,与应用程序彼此独立的一组相关数据的集合。 上一页 下一页 要 点
1.3.2 数据库管理系统 从信息处理的理论角度讲,如果把利用数据库进行信息处理的工作过程,或把掌握、管理和操纵数据库的数据资源的方法看作是一个系统的话,则称这个系统为数据库管理系统。 数据库管理系统通常由三个部分组成: 数据描述语言(DDL)及其编译程序、数据操纵语言(DML)或查询语言及其编译或解释程序、数据库管理例行程序。 上一页 下一页 要 点
…… …… 用户A1 用户A2 用户B1 用户B2 …… …… 外模式A 外视图A 外模式B 外视图B DBMS 由数据 库管理 员建立 和维护 的模式 概念模式 概念视图 存储结构定义 (内模式) 存储数据库 (内视图) …… 数据库系统的体系结构如图所示: 上一页 下一页 要 点
1.3.4 数据库应用系统的构成 数据库应用系统它是由有关的硬件、软件、数据和人员四个部分组合而形成的。 硬件环境是数据库系统的物理支撑,包括CPU、内存、外存及输入/输出设备。由于数据库系统承担着数据管理的任务,它要在操作系统的支持下工作,而且本身包含着数据库管理例行程序、应用程序等,因此要求有足够大的内存开销。同时,由于用户的数据、系统软件和应用软件都要保存在外存上,所以对外存容量的要求也很高。 上一页 下一页 要 点
软件系统包括系统软件和应用软件两类。系统软件主要包括数据库管理系统软件、开发应用系统的高级语言及其编译系统、应用系统开发的工具软件等。它们为开发应用系统提供了良好的环境,其中数据库管理系统是连接数据库和用户之间的纽带,是软件系统的核心。软件系统包括系统软件和应用软件两类。系统软件主要包括数据库管理系统软件、开发应用系统的高级语言及其编译系统、应用系统开发的工具软件等。它们为开发应用系统提供了良好的环境,其中数据库管理系统是连接数据库和用户之间的纽带,是软件系统的核心。 应用软件是指在数据库管理系统的基础上由用户根据自己的实际需要自行开发的应用程序。 上一页 下一页 要 点
数据库系统的人员是指管理、开发和使用数据库系统的全部人员,主要包括数据库管理员、系统分析员、应用程序员和用户。数据库系统的人员是指管理、开发和使用数据库系统的全部人员,主要包括数据库管理员、系统分析员、应用程序员和用户。 不同的人员涉及不同的数据抽象级别,数据库管理员负责管理和控制数据库系统;系统分析员负责应用系统的需求分析和规范说明,确定系统的软硬件配置、系统的功能及数据库概念设计;应用程序员负责设计应用系统的程序模块,根据数据库的外模式来编写应用程序;最终用户通过应用系统提供的用户接口界面使用数据库。 上一页 下一页 要 点
1.4 关系数据库及其设计 1.4.1 关系数据库 关系数据库(Relational Data Base)是若干个关系的集合。也可以说,关系数据库是由若干张二维表组成的。 在关系数据库中,将一个关系视为是一张二维表,又称其为数据表。 一个关系数据库由若干个数据表组成,数据表又由若干个记录组成,而每一个记录是由若干个以字段属性加以分类的数据项组成的。 上一页 下一页 要 点
表1-3 模型理论与关系数据库中术语的对照关系 上一页 下一页 要 点
在数据表中,若某一字段或几个字段的组合值能够标识一个记录,则称其为关键字(或键),当一个数据表有多个关键字时,可从中选出一个作为主关键字(或主键)。在数据表中,若某一字段或几个字段的组合值能够标识一个记录,则称其为关键字(或键),当一个数据表有多个关键字时,可从中选出一个作为主关键字(或主键)。 上一页 下一页 要 点
在关系数据库中,数据表之间是具有相关性的。数据表之间的这种相关性是依靠每一个独立的数据表内部具有相同属性的字段建立的。一般地,两个数据表之间建立关联关系,是将一个数据表视为父表,另外一个数据表视为子表,其中子表中与父表主关键字段相对应的字段作为外键,数据表之间的关联就是通过主键与外键作为纽带实现关联的。在关系数据库中,数据表之间是具有相关性的。数据表之间的这种相关性是依靠每一个独立的数据表内部具有相同属性的字段建立的。一般地,两个数据表之间建立关联关系,是将一个数据表视为父表,另外一个数据表视为子表,其中子表中与父表主关键字段相对应的字段作为外键,数据表之间的关联就是通过主键与外键作为纽带实现关联的。 上一页 下一页 要 点
在关系数据库中,数据表为基本文件,每个数据表之间具有独立性,而且若干个数据表间又具有相关性,使得数据操纵方式简单,这一特点使其具有极大的优越性,并能得以迅速普及。在关系数据库中,数据表为基本文件,每个数据表之间具有独立性,而且若干个数据表间又具有相关性,使得数据操纵方式简单,这一特点使其具有极大的优越性,并能得以迅速普及。 上一页 下一页 要 点
1.4.2 关系的规范化 关系模型是以关系集合理论中基本的数学原理为基础的,通过确立关系中的规范化准则,既可以方便数据库中数据的处理,又可以给程序设计带来方便。这一规范化准则称为关系规范化。 关系规范化理论是研究如何将一个不十分合理的关系模型转化为一个最佳的数据关系模型的理论,它是围绕范式而建立的。 上一页 下一页 要 点
表1-4 信息中心专门人才基本情况一览表 上一页 下一页 要 点
可以将表1-4分成三个独立的数据表: 专门人才基本情况一览表(如表1-4所示),它收入了信息中心管理的专门人才的自然情况。 专门人才专业特长一览表(如表1-5所示),它收入了信息中心专门人才的专业特长情况。 专门人才成就成果情况一览表(如表1-6所示),它收入了信息中心专门人才的成就及成果情况。 上一页 下一页 要 点
表1-5 信息中心专门人才基本情况一览表 上一页 下一页 要 点
表1-6 信息中心专门人才专业特长一览表 上一页 下一页 要 点
表1-7 信息中心专门人才成就成果一览表 上一页 下一页 要 点
可以看出,若将一些数据集中在一个表中,则表的结构十分复杂,又不能满足关系模型条件;若将其做成一张二维表形式,就会有许多重复数据出现,造成数据的冗余,这必然导致数据存储空间的浪费,同样也将使数据的输入、查找和修改更加麻烦。相反,依赖关系数据规范化的准则建立多个相互关联的数据表,并让这些分开的数据表依靠关键字段保持一定的关联关系,就可以有效地改进上述缺点。可以看出,若将一些数据集中在一个表中,则表的结构十分复杂,又不能满足关系模型条件;若将其做成一张二维表形式,就会有许多重复数据出现,造成数据的冗余,这必然导致数据存储空间的浪费,同样也将使数据的输入、查找和修改更加麻烦。相反,依赖关系数据规范化的准则建立多个相互关联的数据表,并让这些分开的数据表依靠关键字段保持一定的关联关系,就可以有效地改进上述缺点。 上一页 下一页 要 点
表1-5 一对一 一对多 表1-6 表1-7 专门人才基本情况数据库 上一页 下一页 要 点
1.4.3 表间关联关系的类型 在一个关系数据库中,若想将依赖于关系模型建立的多个数据表组织在一起,反映客观事物数据间的多种对应关系,通常将这些数据表放入同一个数据库中,并建立表间关联。 在同一个数据库中,相关联的表间关系的类型有一对一、一对多和多对一3种关系。 上一页 下一页 要 点
1.一对一关系 一对一关系即在两个数据表中选一个相同属性字段作为关键字段,把其中一个数据表中的关键字段称为主关键字段,该字段值是唯一的,而另一个数据表中的关键字段称为外来关键字段,该字段值也是唯一的。 上一页 下一页 要 点
一对一(编号) 上一页 下一页 要 点
2.一对多关系 一对多关系,即在两个数据表中选一个相同属性字段作为关键字段,把其中一个数据表的关键字段称为主关键字段,该字段值是唯一的,而把另一个数据表中的关键字段称为外来关键字段,该字段值是重复的。 上一页 下一页 要 点
一对多(编号) 上一页 下一页 要 点
3.多对一关系 多对一关系与一对多关系是类似的,唯一的区别是在两个相关联的数据表中,选择哪一个数据表中的关键字段为主关键字段,该字段值是重复的,与它关联的另一个数据表中的关键字段为外来关键字段,该字段值是唯一的。 上一页 下一页 要 点
多对一(编号) 上一页 下一页 要 点
1.4.4 关系的完整性 关系的完整性,即关系中的数据及具有关联关系的数据间必须遵循的制约和依存关系,以保证数据的正确性、有效性和相容性。 关系的完整性主要包括域完整性、实体完整性和参照完整性三种。 上一页 下一页 要 点
1.域完整性 域完整性是对数据表中字段属性的约束,它包括字段的值域、字段的类型及字段的有效规则等约束,它是由确定关系结构时所定义的字段的属性决定的。 上一页 下一页 要 点
2.实体完整性 实体完整性是对关系中的记录唯一性,也就是主键的约束。准确地说,实体完整性是指关系中的主属性值不能为Null且不能有相同值。 上一页 下一页 要 点
3.参照完整性 参照完整性是对关系数据库中建立关联关系的数据表间数据参照引用的约束,也就是对外键的约束。准确地说,参照完整性是指关系中的外键必须是另一个关系的主键有效值,或者是NULL。 上一页 下一页 要 点