资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,.,*,Visual,FoxPro,数据库应用技术,11/29/2024,1,.,Visual FoxPro8/8/20231.,前言,Visual FoxPro 6.0,关系数据库管理系统是新一代数据库管理系统的杰出代表,以它强大的,性能,、完整而又丰富的,工具,、超高速的,速度,、极其友好的,界面,,以及完备的,兼容性,等特点,吸引众多的国内外用户,倍受广大用户的欢迎。,Visual FoxPro 6.0 及它的中文版,是可运行于Windows 95和Windows NT平台的数据库开发系统,它不仅可以简化数据库管理,而且能使应用程序的开发流程更为合理。,11/29/2024,2,.,前言 Visual FoxPro 6.,Visual FoxPro 6.0 使组织数据、定义数据库规则和建立应用程序等工作变得简单易行。用户利用,可视化的设计工具和向导,,,可以快速创建表单,查询和打印报表。,11/29/2024,3,.,Visual FoxPro 6.0,Visual FoxPro 6.0 还提供了一个集成化的系统开发环境,它不仅支持过程式编程技术,而且在语言方面作了强大的扩充,支持面向对象可视化编程技术。由于Visual FoxPro 6.0 拥有功能强大的可视化程序设计工具,使程序设计简单易行。,控件类:复选框、组合框、命令按钮、编辑框、标签、列表框、文本框、选择按钮等,frmstudent.cmdquit.enabled=.f.,容器类(可以包含其他对象的类):表单、表格、列、页框、页面等,11/29/2024,4,.,Visual FoxPro 6.0 还提供了一,本课程是根据教育部提出的,非计算机专业,计算机基础教学三个层次要求,并配合全国计算机等级考试“Visual FoxPro 二级”考试大纲的知识要点,以Visual FoxPro 6.0 为主要内容,介绍关系数据库管理系统基础理论及应用系统开发知识。不仅介绍,数据库基础理论,,介绍了Visual FoxPro 6.0 的,基本操作,;而且介绍面向对象可视化,编程,、应用系统开发的方法、步骤。,11/29/2024,5,.,本课程是根据教育部提出的非计算机专业计算机基础教学,目录,第一章数据库基础理论,第二章数据库设计,第三章,Visual FoxPro系统概述,第四章Visual FoxPro操作基础,第五章,项目管理器,第六章表操作,第七章数据库,第,八章,视图与查询,第九章报表,第十章程序设计,第十一章SQL语句,第十二章表单,第十三章应用系统开发实例,11/29/2024,6,.,目录第一章数据库基础理论 第八章视图与查询8/8/20236,第一章,数据库基础理论,返回目录,11/29/2024,7,.,第一章数据库基础理论返回目录8/8/20237.,本章要点,信息、数据和数据处理,数据模型,数据库系统,关系数据库及其设计,返回目录,11/29/2024,8,.,本章要点信息、数据和数据处理返回目录8/8/20238.,1.1 信息、数据和数据处理,1.1.1,信息与数据,信息(,Information,)是客观事物属性的反映。它所反映的是关于某一客观系统中某一事物的某一方面属性或某一时刻的表现形式。,通俗地讲,信息是经过,加工处理,并对人类客观行为产生影响的事物属性的表现形式。,数据(,Data,)是反映客观事物属性的记录,是信息的,载体,。对客观事物属性的记录是用一定的符号来表达的,因此说数据是信息的,具体表现形式,。,上一页,下一页,要 点,11/29/2024,9,.,1.1 信息、数据和数据处理 1.1.1 信息与数,信息,是经过,加工后,的数据,举例:平均成绩、平均身高、记账凭证等,只要对数据加工了就变成了信息,而,不管是否已被使用,信息,是对客观世界产生了,影响,的数据(广义),或可改变人们行为的数据,举例:,测量,体温,后,吃药,驾驶员知道当前的,车速,后,加速,或,减速,不经加工且没被使用的数据仍为数据,数据,是,客观,的,单纯的数据没有实际意义。(需要解释),上一页,下一页,要 点,11/29/2024,10,.,信息是经过加工后的数据上一页下一页要 点8/8/202,数据与信息在概念上是有区别的。从信息处理角度看,任何事物的属性都是通过数据来表示的,数据经过加工处理后,使其具有,知识性,并对人类活动产生,决策作用,,从而形成信息。,从,计算机的角度,看,数据泛指那些可以被计算机接受并能够被计算机识别处理的符号。,总之,,信息是有用的数据,数据是信息的表现形式,信息是通过数据符号来传播的,。,上一页,下一页,要 点,11/29/2024,11,.,数据与信息在概念上是有区别的。从信息,1.1.2,数据处理,数据处理,也称为,信息处理。所谓数据处理,实际上就是利用计算机对各种类型的数据进行处理。它包括对数据的,采集、整理、存储、分类、排序、检索、维护、加工、统计和传输,等一系列操作过程。,数据处理的,目的,是从大量的、原始的数据中获得人们所需要的资料并提取有用的数据成份,作为行为和,决策,的依据。,上一页,下一页,要 点,11/29/2024,12,.,1.1.2 数据处理上一页下一页要 点8/8,人工管理阶段,出现在计算机应用于数据管理的初期。应用程序中不仅要设计数据的,逻辑结构,,还要阐明数据在存储器上的,存储地址,。,在这一管理方式下,当数据有所变动时程序则随之改变,,独立性差,;另外,各程序之间的数据不能相互传递,缺少共享性,因而这种管理方式既不灵活,也不安全,,编程效率较差,。,上一页,下一页,要 点,11/29/2024,13,.,人工管理阶段出现在计算机应用于数据管,文件管理阶段,即把有关的数据组织成一种文件,这种数据文件可以脱离程序而独立存在,由一个专门的文件管理系统实施统一管理。,但是,数据文件仍高度依赖于其对应的程序,不能被多个程序所共享。由于数据文件之间不能建立任何联系,因而数据的通用性仍然较差,,冗余量大,。,上一页,下一页,要 点,操作系统,应用程序n,应用程序2,数据组2,数据组n,应用程序1,数据组1,文件管理系统,11/29/2024,14,.,文件管理阶段即把有关的数据组织成一,数据库系统管理阶段,即对所有的数据实行统一规划管理,形成一个数据中心,构成一个数据“仓库”。,在这一管理方式下,应用程序不再只与一个孤立的数据文件相对应,可以取整体数据集的某个子集作为逻辑文件与其对应,通过数据库管理系统实现逻辑文件与物理数据之间的映射。,上一页,下一页,要 点,11/29/2024,15,.,数据库系统管理阶段即对所有的数据,在数据库系统管理的系统环境下,应用程序对数据的管理和访问灵活方便,而且数据与应用程序之间完全独立,使程序的编制质量和效率都有所提高;由于数据文件间可以建立关联关系,数据的,冗余大大减少,,数据,共享性,显著增强。,上一页,下一页,要 点,11/29/2024,16,.,在数据库系统管理的系统环境下,应用程,1.2,数据模型,客观事物的这种普遍联系性,决定了作为事物属性记录符号的数据与数据之间也存在着一定的联系性。具有联系性的相关数据总是按照一定的组织关系排列,从而构成一定的结构,对这种结构的描述就是数据模型。,从理论上讲,数据模型是指反映客观事物及客观事物间联系的,数据组织的结构和形式,。客观事物是千变万化的,表现各种客观事物的数据结构和形式也是千差万别的,尽管如此,它们之间还是有其共同性的。,上一页,下一页,要 点,11/29/2024,17,.,1.2 数据模型 客观事物的这种普,1.2.1,层次模型,层次模型,(,Hierarchical Model,)表示数据间的从属关系结构,是一种以记录某一事物的类型为根结点的有向树结构。,其主要特征如下:,仅有一个无双亲的根结点。,根结点以外的子结点,向上仅有一个父结点,向下有若干子结点,。,上一页,下一页,要 点,11/29/2024,18,.,1.2.1 层次模型上一页下一页要 点8/8,1.2.2,网状模型,网状模型,(Network Model)是层次模型的扩展,它表示多个从属关系的层次结构,呈现一种交叉关系的网络结构。网状模型是以记录为结点的网络结构。,其主要特征如下:,有一个以上的结点无双亲。,至少有一个结点有多个双亲。,上一页,下一页,要 点,11/29/2024,19,.,1.2.2 网状模型上一页下一页要 点8/8,1.2.3,关系模型,关系模型,(Relational Model)的所谓“关系”是有特定含义的。广义地说,任何数据模型都描述一定事物数据之间的关系。,关系模型的所谓“关系”虽然也适用于这种广义的理解,但同时又特指那种虽具有相关性而,非从属性的平行的,数据之间按照某种序列排列的集合关系。,上一页,下一页,要 点,11/29/2024,20,.,1.2.3 关系模型上一页下一页要 点8/,关系模型的主要特点有:,(1) 关系中每一分量不可再分,是最基本的数据单位;,(2) 每一竖列的分量是同属性的,列数根据需要而设,且各,列的顺序是任意,的;,(3) 每一横,行,由一个个体事物的诸多属性构成,且各,行的顺序可以是任意,的;,(4) 一个关系是一张,二维表,,不允许有相同的属性名,也不允许有相同的元组。,上一页,下一页,要 点,11/29/2024,21,.,关系模型的主要特点有:上一页下一页要 点8/8,1.3,数据库系统,1.3.1,数据库,数据库(,Data Base,)是数据库系统的核心和管理对象。,所谓,数据库,,就是以一定的组织方式将相关的数据组织在一起,存放在计算机外存储器上形成的,能为多个用户共享的,与应用程序彼此独立的一组相关数据的集合。,上一页,下一页,要 点,11/29/2024,22,.,1.3 数据库系统 1.3.1 数据库上一页,1.3.2,数据库管理系统,从信息处理的理论角度讲,如果把利用数据库进行信息处理的工作过程,或把掌握、管理和操纵数据库的数据资源的方法看作是一个系统的话,则称这个系统为数据库管理系统。,数据库管理系统,通常由三个部分组成:,数据描述语言(,DDL,)及其编译程序、数据操纵语言(,DML,)或查询语言及其编译或解释程序、数据库管理例行程序。,上一页,下一页,要 点,11/29/2024,23,.,1.3.2 数据库管理系统上一页下一页要,用户A1,用户A2,用户B1,用户B2,外视图A,外模式A,外视图B,外模式B,概念模式,概念视图,存储结构定义,(内模式),存储数据库,(内视图),DBMS,由数据,库管理,员建立,和维护,的模式,数据库系统的体系结构如图所示:,上一页,下一页,要 点,11/29/2024,24,.,用户A1用户A2用户B1用户B2外视图A,1.3.4,数据库应用系统的构成,数据库,应用系统,它是由有关的,硬件、软件、数据和人员四个部分,组合而形成的。,硬件环境,是数据库系统的物理支撑,包括CPU、内存、外存及输入/输出设备。由于数据库系统承担着数据管理的任务,它要在操作系统的支持下工作,而且本身包含着数据库管理例行程序、应用程序等,因此要求有足够大的内存开销。同时,由于用户的数据、系统软件和应用软件都要保存在外存上,所以对外存容量的要求也很高。,上一页,下一页,要 点,11/29/2024,25,.,1.3.4 数据库应用系统的构成上一页下一页要,软件系统,包括系统软件和应用软件两类。,系统软件,主要包括数据库管理系统软件、开发应用系统的高级语言及其编译系统、应用系统开发的工具软件等。它们为开发应用系统提供了良好的环境,其中,数据库管理系统,是连接数据库和用户之间的纽带,是软件系统的,核心,。,应用软件,是指在数据库管理系统的基础上由用户根据自己的实际需要自行开发的应用程序。,上一页,下一页,要 点,11/29/2024,26,.,软件系统包括系统软件和应用软件两类。,数据库系统的人员,是指管理、开发和使用数据库系统的全部人员,,主要包括,数据库管理员、系统分析员、应用程序员和用户。,不同的人员涉及不同的数据抽象级别,,数据库管理员,负责管理和控制数据库系统;,系统分析员,负责应用系统的需求分析和规范说明,确定系统的软硬件配置、系统的功能及数据库概念设计;,应用程序员,负责设计应用系统的程序模块,根据数据库的外模式来编写应用程序;,最终用户,通过应用系统提供的用户接口界面使用数据库。,上一页,下一页,要 点,11/29/2024,27,.,数据库系统的人员是指管理、开发和使用数据库系统,1.4,关系数据库及其设计,1.4.1,关系数据库,关系数据库(,Relational Data Base,)是若干个关系的集合。也可以说,关系数据库是由若干张二维表组成的。,在关系数据库中,将一个关系视为是一张二维表,又称其为,数据表,。,一个关系数据库由若干个,数据表,组成,数据表又由若干个,记录,组成,而每一个记录是由若干个以字段属性加以分类的,数据项,组成的。,上一页,下一页,要 点,11/29/2024,28,.,1.4 关系数据库及其设计 1.4.1 关系数,在,关系模型理论,中,在,关系数据库,中,关系,数据表,元组,记录,属性,字段,表,1-3,模型理论与关系数据库中术语的对照关系,上一页,下一页,要 点,11/29/2024,29,.,在关系模型理论中 在关系数据库中 关系 数据表 元组 记录,在数据表中,若某一字段或几个字段的组合值能够标识一个记录,则称其为,关键字,(或键),当一个数据表有多个关键字时,可从中选出一个作为,主关键字(或主键,)。,在关系数据库中,数据表之间是具有相关性的。数据表之间的这种相关性是依靠每一个独立的数据表内部具有相同属性的字段建立的。一般地,两个数据表之间建立关联关系,是将一个数据表视为,父表,,另外一个数据表视为,子表,,其中子表中与父表主关键字段相对应的字段作为,外键,,数据表之间的,关联就是通过主键与外键作为纽带实现关联的。,上一页,下一页,要 点,11/29/2024,30,.,在数据表中,若某一字段或几个字段的组,1.4.2,关系的规范化,关系模型是以关系集合理论中基本的数学原理为基础的,通过确立关系中的规范化准则,既可以方便数据库中数据的处理,又可以给程序设计带来方便。这一规范化准则称为关系规范化。,关系规范化理论是研究如何将一个不十分合理的关系模型转化为一个,最佳的数据关系模型,的理论,它是围绕范式而建立的。,上一页,下一页,要 点,11/29/2024,31,.,1.4.2 关系的规范化上一页下一页要 点8/8,表,1-4,信息中心专门人才基本情况一览表,自然情况,专业,成果和成就,编号,姓名,性别,出生,日期,工资,现状,党员否,专业,专业,年限,职称,英语水平,名称,类别,出处,bj10001,刘伟箭,男,1960.,08.23,20000,T,计算机应用,教授,精通,略,略,略,略,略,略,略,略,略,略,略,略,略,略,略,J104010,黄晓远,男,1970.,08.12,10000,F,财政,税收,副教授,精通,略,略,略,略,略,略,略,略,略,略,略,略,略,略,略,上一页,下一页,要 点,11/29/2024,32,.,表1-4 信息中心专门人才基本情况一览表自,可以将表1-4分成三个独立的数据表:,专门人才基本情况一览表(如表,1-5,所示),它收入了信息中心管理的专门人才的自然情况。,专门人才专业特长一览表(如表,1-6,所示),它收入了信息中心专门人才的专业特长情况。,专门人才成就成果情况一览表(如表,1-7,所示),它收入了信息中心专门人才的成就及成果情况。,上一页,下一页,要 点,11/29/2024,33,.,可以将表1-4分成三个独立的数据表: 上一页下一页要,编号,姓名,性别,出生日期,工资现状,党员否,工作简历,照片,Bj10001,刘伟箭,男,1960.08.23,2000.00,T,(略),(略),Bj11002,刘简捷,男,1958.12.31,1800.00,T,(略),(略),Gz05001,藤波海,男,1956.04.14,1160.00,F,(略),(略),Gz05002,杨行东,男,1949.03.30,1260.00,F,(略),(略),Jl04001,林惠繁,女,1969.02.03,8000.00,T,(略),(略),Jl04010,黄晓远,男,1970.08.12,10000.00,F,(略),(略),Sy02030,李鹏程,男,1946.02.08,3000.00,F,(略),(略),Sy02035,王国民,男,1935.05.20,5000.00,F,(略),(略),Sh01001,金银桥,女,1969.01.24,2000.00,F,(略),(略),sh01002,林立荞,女,1964.08.16,4500.00,F,(略),(略),表,5,信息中心专门人才,基本情况,一览表,上一页,下一页,要 点,11/29/2024,34,.,编号姓名性别出生日期工资现状党员否工作简历照片Bj10001,表,1-6,信息中心专门人才,专业特长,一览表,编号,专业,专业年限,职称,英语水平,Bj10001,计算机应用,20,教授,精通,Bj11002,环境工程,24,高级工程师,精通,Gz05001,生物工程,30,教授,精通,Gz05002,统计学,15,副教授,一般阅读,Jl04001,财政税收,10,教授,精通,Jl04010,计算机应用,10,副教授,一般阅读,Sy02030,城市规划,30,高级工程师,精通,Sy02035,财政金融,40,高级工程师,精通,Sh01001,建筑设计,8,副教授,一般阅读,sh01002,计算机应用,13,副教授,一般阅读,上一页,下一页,要 点,11/29/2024,35,.,表1-6 信息中心专门人才专业特长一,表1-7 信息中心专门人才,成就成果,一览表,编号,成果名称,成果类别,成果出处,Bj10001,VF高级编程技术,著作,高等教育出版社,Bj10001,专门人才信息管理系统,软件,中国科学技术协会推广,Bj10001,VF编程技巧与常见问题解答,著作,高等教育出版社,Bj10001,面向对象编程与系统开发,著作,高等教育出版社,Bj10001,面向对象编程与系统程序优化,论文,中国计算机世界,jl04010,计算机应用与软件开发,著作,清华大学出版社,Jl04010,数据库原理,著作,高等教育出版社,Jl04010,计算机网络,著作,高等教育出版社,Jl04010,中国电子商务发展策略,论文,计算机应用,jl04010,远程网络教育,论文,计算机应用,上一页,下一页,要 点,11/29/2024,36,.,表1-7 信息中心专门人才成就成果一览表编,可以看出,若将一些数据集中在一个表中,则表的结构十分复杂,又不能满足关系模型条件;若将其做成一张二维表形式,就会有许多重复数据出现,造成数据的冗余,这必然导致数据存储空间的浪费,同样也将使数据的输入、查找和修改更加麻烦。,相反,依赖关系数据规范化的准则建立,多个相互关联的数据表,,并让这些分开的数据表依靠关键字段保持一定的关联关系,就可以有效地改进上述缺点。,上一页,下一页,要 点,11/29/2024,37,.,可以看出,若将一些数据集中在一个表中,关系数据库的规范化,第一范式(,1NF,),11/29/2024,38,.,关系数据库的规范化第一范式(1NF)8/8/202338.,例,:,关系模式,SLC(学号,系名,住处,课程号,成绩 ),这里,码为(学号,课程号,)。函数依赖有:,(学号,课程号)G,学号 系名,(学号,课程号) 系名,学号住处, (学号,课程号) 住处,,系名住处(,因为每个系的学生只住一个地方,),解决的办法,是用投影分解把关系模式SLC分解为两个关系模式。,SC(,学号,,,课程号,,,成绩,),SL(,学号,,,系名,,,住处,),学号,课程号,系名,住处,成绩,2NF:,关系模式R1NF,且,每一个非主属性,完全函数依赖,于码。,11/29/2024,39,.,解决的办法是用投影分解把关系模式SLC分解为两个关系模式,解决的办法,:,SL(,学号,,,系名,,,住处,)分解为:,SD(,学号,,系名)和DL(,系名,,住处),学号,系名,住处,3NF,:每一个非主属性,即不部分依赖于码也不传递依赖于码。,11/29/2024,40,.,学号系名住处3NF:每一个非主属性8/8/202340.,表1-5,基本情况,表1-7,成就成果,表1-6,专业特长,一对多,一对一,专门人才基本情况数据库,上一页,下一页,要 点,11/29/2024,41,.,表1-5基本情况表1-7成就成果表,1.4.3,表间关联关系的类型,在一个关系数据库中,若想将依赖于关系模型建立的多个数据表组织在一起,反映客观事物数据间的多种对应关系,通常将这些数据表放入同一个数据库中,并建立表间关联。,在同一个数据库中,相关联的表间关系的类型有,一对一、一对多和多对一,3种关系。,上一页,下一页,要 点,11/29/2024,42,.,1.4.3 表间关联关系的类型上一页下一页要 点,1,一对一关系,一对一关系即在两个数据表中选一个相同属性字段作为关键字段,把其中一个数据表中的关键字段称为,主,关,键,字段,该字段值是,唯一,的,而另一个数据表中的关键字段称为,外,来关,键,字段,该字段值也是,唯一,的。,上一页,下一页,要 点,11/29/2024,43,.,1一对一关系上一页下一页要 点8/8/20234,编号,专 业,专业年限,bj10001,计算机应用,20,bj11002,环境工程,24,gz05001,生物工程,30,gz05002,统计学,15,jl04001,财政税收,10,编号,姓名,性别,bj10001,刘伟箭,男,bj11002,刘简捷,男,gz05001,藤波海,男,gz05002,杨行东,男,jl04001,林慧繁,女,一对一(编号),上一页,下一页,要 点,11/29/2024,44,.,编号 专 业 专业年限 bj10001 计算机应用 2,2,一对多关系,一对多关系,即在两个数据表中选一个相同属性字段作为关键字段,把其中一个数据表的关键字段称为,主,关,键,字段,该字段值是,唯一,的,而把另一个数据表中的关键字段称为,外,来关,键,字段,该字段值是,重复,的。,上一页,下一页,要 点,11/29/2024,45,.,2一对多关系上一页下一页要 点8/8/20234,编号,专 业,成果类别,bj10001,VF高级编程技术,著作,bj10001,专门人才信息管理系统,著作,bj10001,VF编程技巧与常见问题解答,著作,bj10001,面向对象编程与系统开发,著作,bj10001,面向对象编程与系统程序优化,论文,编号,姓名,性别,bj10001,刘伟箭,男,bj11002,刘简捷,男,gz05001,藤波海,男,gz05002,杨行东,男,jl04001,林慧繁,女,一对多(编号,),上一页,下一页,要 点,11/29/2024,46,.,编号 专 业 成果类别 bj1000,3多对一关系,多对一关系与一对多关系是类似的,唯一的区别是在两个相关联的数据表中,选择一个数据表中的关键字段为,主,关,键,字段,该字段值是,重复,的,与它关联的另一个数据表中的关,键字段为,外,来关,键,字段,该字段值是,唯一,的。,上一页,下一页,要 点,11/29/2024,47,.,3多对一关系上一页下一页要 点8/8/20234,编号,专 业,成果类别,bj10001,VF高级编程技术,著作,bj10001,专门人才信息管理系统,著作,bj10001,VF编程技巧与常见问题解答,著作,bj10001,面向对象编程与系统开发,著作,bj10001,面向对象编程与系统程序优化,论文,编号,姓名,性别,bj10001,刘伟箭,男,bj11002,刘简捷,男,gz05001,藤波海,男,gz05002,杨行东,男,jl04001,林慧繁,女,多对一(编号),上一页,下一页,要 点,11/29/2024,48,.,编号 专 业 成果类别 bj1000,1.4.4,关系的完整性,关系的完整性,即关系中的数据及具有关联关系的,数据间,必须遵循的制约和依存关系,以保证数据的正确性、有效性和相容性。,关系的完整性主要包括,域完整性、实体完整性和参照完整性,三种。,上一页,下一页,要 点,11/29/2024,49,.,1.4.4 关系的完整性上一页下一页要 点8/8,1域完整性,域完整性是对数据表中,字段属性的约束,,它包括字段的,值域,、字段的,类型,及字段的,有效规则,等约束,它是由确定关系结构时所定义的字段的属性决定的。,上一页,下一页,要 点,11/29/2024,50,.,1域完整性上一页下一页要 点8/8/202350,2实体完整性,实体完整性是对关系中的记录唯一性,也就是,主键,的约束,。准确地说,实体完整性是指关系中的主属性值,不能为Null且不能有相同值,。,上一页,下一页,要 点,11/29/2024,51,.,2实体完整性上一页下一页要 点8/8/20235,3参照完整性,参照完整性是对关系数据库中建立关联关系的数据表间数据参照引用的约束,也就是对,外键,的约束。准确地说,参照完整性是指关系中的外键必须是另一个关系的,主键有效值,或者是NULL。,上一页,下一页,要 点,11/29/2024,52,.,3参照完整性上一页下一页要 点8/8/20235,1.4.5,关系运算,关系运算是,以关系为运算对象,的运算,在关系运算中,变量是关系,运算,结果仍然是关系,。,常见的关系运算有,选择运算、投影运算和连接运算,三种。,上一页,下一页,要 点,11/29/2024,53,.,1.4.5 关系运算上一页下一页要 点8/8/2,选择运算是从关系中,选择某些满足条件的,记录,组成一个新的关系。也可以说,选择运算是在关系,R,中选择满足给定条件的元组。,P211,数据查询,select(字段名(*) from(表),where,(条件表达式),上一页,下一页,要 点,1选择(Select),11/29/2024,54,.,选择运算是从关系中选择某些满足条件的记录组成一个,投影运算是从关系中,选择某些字段的所有值,组成一个新的关系。也可以说,投影运算是在关系,R,中选择出,若干属性列,。,select(,字段名,) from(表),注:不需要 where(条件表达式),上一页,下一页,要 点,2投影(Project),11/29/2024,55,.,投影运算是从关系中选择某些字段的所有值组成一个新,连接运算是将两个或多个关系通过,连接条件,组成一个新的关系。也可以说,连接运算是在关系,R,和关系,S,中选择属性间满足一定条件的元组。,select(字段名),from(表) join (表) on(例如物业费.房号业主.房号),where(条件表达式),上一页,下一页,要 点,3连接(Join),11/29/2024,56,.,连接运算是将两个或多个关系通过连接条件组成一个新,第二章,Visual FoxPro系统概述,返回目录,11/29/2024,57,.,第二章Visual FoxPro系统概述 返回目录8/8/2,本章要点,Visual FoxPro的特性,Visual FoxPro的安装与启动,Visual FoxPro系统环境的配置,Visual FoxPro用户界面,Visual FoxPro向导,Visual FoxPro生成器,Visual FoxPro设计器,返回目录,11/29/2024,58,.,本章要点Visual FoxPro的特性 返回目录8/8/2,2.1 Visual FoxPro,的特性,1用户界面良好,2,面向对象,编程技术功能强,3快速创建应用程序,4数据库的,操作简便,5多个用户可以一起开发程序,6可与其他应用程序交互操作,7独特的开发客户/服务器解决方案,8可以升级早期版本,上一页,下一页,要 点,11/29/2024,59,.,2.1 Visual FoxPro的特性 1用户界面良,2.2 Visual FoxPro,的安装与启动,2.2.1,安装环境,在安装,Visual FoxPro 之前,要了解Visual FoxPro 的硬件和软件必备环境,做好安装前的准备工作,。,1,硬件环境,2,软件环境,3,“升迁向导”环境(专业版),上一页,下一页,要 点,11/29/2024,60,.,2.2 Visual FoxPro的安装与启动 2.,2.2.2 Visual FoxPro,的,安装,中,文Visual FoxPro 可以从CD-ROM或网络上安装。以下介绍三种从CD-ROM上安装Visual FoxPro 的方法。,1,直接启动,CD-ROM,2,直接运行安装程序,3使用Windows 98安装(控制面板),上一页,下一页,要 点,11/29/2024,61,.,2.2.2 Visual FoxPro 的安装上一页,2.2.3,启动,Visual FoxPro,启动,Visual FoxPro,有多种方法,可采用以下三种方式之一。,1,从“开始”菜单启动,所有程序,开始(右键属性)开始菜单自定义,2,从资源管理器中启动(我的电脑右键),3,从“运行”对话框中启动(开始运行),上一页,下一页,要 点,11/29/2024,62,.,2.2.3 启动Visual FoxPro 上一页,2.2.4,退出,Visual FoxPro,(,1,) 在,Microsoft Visual FoxPro主菜单中,打开“文件”菜单,选择“退出”选项;,(,2) 按Alt+F4组合,键;,(,3,),按Ctrl+Alt+Del组合,键,进入“关闭程序”窗口,按“结束任务”按钮;,(,4,) 在,Microsoft Visual FoxPro,的系统环境窗口,单击其右上角的“退出”按钮;,(,5,) 在“命令”窗口,输入命令,Quit,。,上一页,下一页,要 点,11/29/2024,63,.,2.2.4 退出Visual FoxPro,2.3 Visual FoxPro,系统环境的配置,Visual FoxPro系统环境的配置,决定了Visual FoxPro系统的操作环境和工作方式。,Visual FoxPro系统允许用户设置大量参数控制其工作方式。通过设置系统环境,可以添加或删除Visual FoxPro控件、更新Windows Registry注册项、改变选项栏和工具栏、安装ODBC数据源等。,上一页,下一页,要 点,11/29/2024,64,.,2.3 Visual FoxPro系统环境的配置,打开,“选项”窗口,的操作步骤,工具,选项,常规,数据,显示,文件位置,表单,项目,控件,确定,上一页,下一页,要 点,11/29/2024,65,.,打开“选项”窗口的操作步骤工具选项常规 数据 显示 文件位置,在“选项”窗口,有,12,种不同类别的,环境选项卡,,每一个选项卡有其特定的环境,又有相应的设置信息的对话窗口,用户可以根据操作的需要通过“选项”窗口中的各种选项卡,确定或修改设置每一个参数,从而确定,Visual FoxPro,的系统环境。,上一页,下一页,要 点,11/29/2024,66,.,在“选项”窗口,有12种不同类别的环境选项,2.4 Visual FoxPro,用户界面,2.4.1 Visual FoxPro,的界面,Visual FoxPro,界面,是由,标题栏、菜单栏、工具栏、工作区、状态栏和命令窗口,组成的。,2.4.2,标题栏,标题栏位于屏幕界面的,第一行,,它包含系统程序图标、主屏幕标题、最小化按钮、最大化按钮和关闭按钮,5,个对象。,上一页,下一页,要 点,11/29/2024,67,.,2.4 Visual FoxPro用户界面 2.4.1,菜单栏,工具栏,命令窗口,状态栏,工作区,标题栏,上一页,下一页,要 点,11/29/2024,68,.,菜单栏工具栏命令窗口状态栏工作区标题栏上一页下一页要,2.4.3,菜单栏,菜单栏位于屏幕的第二行,它包含文件、编辑、显示、格式、工具、程序、窗口和帮助,8,个菜单选项。,当单击其中一个菜单选项时,就可以打开一个对应的“,下拉式”菜单,,在该“下拉式”菜单下,通常还有若干个子菜单选项,当选择其中一个子菜单选项时,就可以执行一个操作。,上一页,下一页,要 点,11/29/2024,69,.,2.4.3 菜单栏上一页下一页要 点8/8/20,2.4.4,工具栏,Visual FoxPro系统提供了11,种常用的工具栏:,(1)常用工具栏 (2)布局工具栏,(3)表单控件工具栏 (4)表单设计器工具栏,(5)查询设计器工具栏 (6)视图设计器工具栏,(7)数据库设计器工具栏(8)报表控件工具栏,(9)报表设计器工具栏 (10)调色板工具栏,(11)打印预览工具栏,上一页,下一页,要 点,11/29/2024,70,.,2.4.4 工具栏上一页下一页要 点8/8/2,激活工具栏,的,操作步骤,显示,工具栏,“常用”,确定,上一页,下一页,要 点,11/29/2024,71,.,激活工具栏的操作步骤 显示 工具栏 “常用” 确定上一页下,2.4.5,命令窗口,命令窗口位于菜单栏和状态栏之间,是,Visual FoxPro系统命令执行、编辑的窗口。在命令窗口中,,可以输入命令实现对数据库的操作管理;也可以用各种编辑工具对操作命令进行,修改、插入、删除、剪切、拷贝、粘贴,等操作;还可以在此窗口建立命令文件并运行命令文件。,在“窗口”菜单下,选择“,隐藏,”,可以关闭命令窗口;选择“,命令窗口,”,可以弹出命令窗口。,上一页,下一页,要 点,11/29/2024,72,.,2.4.5 命令窗口上一页下一页要 点8/8/,2.4.6,工作区与状态行,状态行位于屏幕的最底部,用于显示某一时刻的管理数据的工作状态。,(1),Set Status,off/on,,,可控制屏幕上的状态行是否出现。,(2) 如果当前工作区中没有表文件打开,状态行的内容是空白;如果当前工作区中有表文件打开,状态行显示表名、表所在的数据库名、表中当前记录的记录号、表中的记录总数、表中的当前记录的共享状态等内容。,上一页,下一页,要 点,11/29/2024,73,.,2.4.6 工作区与状态行上一页下一页要 点8,2.5 Visual FoxPro,向导,Visual FoxPro,系统为用户提供许多功能强大的向导。,用户通过系统提供的各种不同的向导设计器,不用编程就可以创建良好的,应用程序界面,,并完成许多有关对数据库的操作。,常用的向导设计器有:,表向导(,P77,)、 报表向导(,P164),、表单向导(,P232,)、查询向导(,P155,),等,。,上一页,下一页,要 点,11/29/2024,74,.,2.5 Visual FoxPro向导 Vis,2.6 Visual FoxPro,生成器,Visual FoxPro,系统提供的生成器,可以简化创建和修改用户界面程序的设计过程,提高软件开发的质量。每个生成器都由一系列,选项卡,组成,允许用户访问并设置所选对象的属性。用户可以将生成器生成的用户界面直接转换成程序代码,把用户从逐条编写程序、反复调试程序的工作中解放出来。,常用的生成器有:,组合框生成器、命令组生成器、表达式生成器、列表框生成器等,。,上一页,下一页,要 点,11/29/2024,75,.,2.6 Visual FoxPro生成器 Visu,2.7 Visual FoxPro,设计器,Visual FoxPro,系统提供的设计器,为用户提供了一个友好的图形界面。用户可以通过它创建并定制数据表结构、数据库结构、报表格式和应用程序组件等。,常用的设计器有:,表设计器(P74)、查询设计、视图设计器、列表框生成器、报表设计器、数据库设计器、菜单设计器,等。,上一页,下一页,要 点,11/29/2024,76,.,2.7 Visual FoxPro设计器,第三章,Visual FoxPro,基础,返回目录,11/29/2024,77,.,第三章Visual FoxPro基础 返回目录8/8/202,本章要点,数据类型,数据存储,函数,表达式,返回目录,输入易犯错误:,中文状态的符号,改变标点符号的状态为英文的,11/29/2024,78,.,本章要点数据类型 返回目录改变标点符号的状态为英文的8/8/,3.1,数据类型,3.1.1,字符型 字符,型(Character)数据是描述,不具有计算能力,的文字数据类型,是常用的数据类型之一。,字符型数据由汉字和ASCII字符集中可打印字符(,英文字符、数字字符、空格及其他专用字符,)组成,最大长度是,254个字符,。, ,上一页,下一页,要 点,11/29/2024,79,.,3.1 数据类型 3.1.1 字符型 字符型(C,3.1.2 数值型,数值型数据在Visual FoxPro系统中被细分为以下4种类型。,1,数值型,(Numeric)数据是由数字(09)、小数点和正负号组成。最大长度为,20个,字符(包括、号和小数点)。,2,浮点型,(Float)数据是数值型数据的一种,,与数值型数据完全等价,,只是在存储形,式上采取浮点格式且数据的,精度,要比数值型数据,高,。,上一页,下一页,要 点,11/29/2024,80,.,3.1.2 数值型上一页下一页要 点8/8/,3,货币型,(Money)数据是数值型数据的一种特殊形式,在数据的第一个数字前冠一个货币符号($)。货币型数据小数位的最大长度是4个字符,小数位超过4个字符的数据,系统将会按四舍五入原则自动截取。,4,双精度型,(Double)数据是,更高,精度,的,数值型,数据,。它只用于数据表中的字段类型的定义,并采用固定长度浮点格式存储。,5,整型,(Integer)数据是不包含小数点部分的数值型数据。,上一页,下一页,要 点,11/29/2024,81,.,3货币型(Money)数据是数值型数据的一种特,3.1.3 日期型,日期型(Date)数据是用于表示日期的数据,长度固定为8个字符。日期型数据包括,年、月、日,三个部分,每部分间用规定的分隔符分开。表现形式由以下几个SET命令决定。,Set Date To(指定显示格式),Set Century On/Off(是否显示世纪部分),Set Strict date To(是否对数据格式进行检查)set mark to(分隔符号),上一页,下一页,要 点,11/29/2024,82,.,3.1.3 日期型 上一页下一页要 点,3.1.4 日期时间型,日期时间型(Date Time)数据是描述日期和时间的数据,长度固定为,8个字符,。,日期时间型数据除包括日期数据的年、月、日外,,还包括,时、分、秒以及上午、下午等内容。,3.1.5 逻辑型,逻辑型(Logic)数据是描述客观事物真假的数据,用于表示逻辑判断结果。 逻辑型数据只有真和假两种值,长度固定为,1个字符,。,上一页,下一页,要 点,11/29/2024,83,.,3.1.4 日期时间型上一页下一页要 点8/,3.1.6,备注型,备注型(,Memo,)数据用于存放较长的字符型数据类型。可以把它看成是字符型数据的特殊形式。,备注型数据没有数据长度限制,仅受限于现有的磁盘空间。它只用于数据表中的字段类型的定义,其字段长度固定为4个字符,而实际数据被存放在与数据表文件同名的,备注文件,中,,长度根据数据的内容而定,。,上一页,下一页,要 点,11/29/2024,84,.,3.1.6 备注型上一页下一页要 点8/8,3.1.7,通用型,通用型(,General,)数据是用于存储,OLE,对象的数据。通用型数据中的,OLE,对象可以是,电子表格、文档、图片,等。,通用型数据长度固定为4个字符,实际数据长度仅受限于,现有的磁盘空间,。,上一页,下一页,要 点,11/29/2024,85,.,3.1.7 通用型上一页下一页要 点8/8/,3.2,数据存储,3.2.1,常量,常量是一个命名的数据项,是在,命令或程序,中,直接引用,的实际值,其特征是在所有的操作中其,值不变,。,常量类型有以下,6种,:,1数值型常量 123.56 2浮点型常量 -12e+12,3字符型常量“123” 4逻辑型常量.t. .y.,5日期常量04/12/98,2002/03/01,6日期时间型常量(,P47,),上一页,下一页,要 点,11/29/2024,86,.,3.2 数据存储 3.2.1 常量上一页下一页要,3.2.2,内存变量,内存变量是一般意义下的简单变量。每一个内存变量都必须有一个,固定的名称,,以标识该内存单元的存储位置。用户可以通过变量标识符使用内存单元存取数据。,内存变量的,类型,有数值型、浮点型、字符型、逻辑型、日期型和日期时间型,6,种,,它的定义是通过,赋值语句,来进行的。,上一页,下一页,要 点,11/29/2024,87,.,3.2.2 内存变量上一页下一页要 点8/8,内存变量,名,的长度可以达到,254,个字符,是由字母、数字和下划线组成的。如果内存变量与数据表中的字段变量同名时,用户在引用内存变量时,要在其名字前加一个,m.或(m-,)。,内存变量的,赋值和输出,,可以使用,Store、“=”或“?”,等命令,进行操作完成。,内存变量的,作用域,,可以通过,Local、Private、Public,命令确定,也可以使用系统默认的范围作为内存变量的作用域。,上一页,下一页,要 点,11/29/2024,88,.,内存变量名的长度可以达到254个字符,3.2.3,数组变量,数组是一组有序内存变量的集合。,所有的数组元素是用一个变量名命名的一个集合体,而且每一个数组元素在内存中独占一个内存单元,视同一个简单内存变量。为了区分不同的数组元素,每一个数组元素都是通过,数组名和下标,来访问的,在,Visual FoxPro,系统环境下,同一个数组元素在不同时刻可以存放不同类型的数据,在同一个数组中,每个元素的值可以是,不同的数据类型,。,上一页,下一页,要 点,11/29/2024,89,.,3.2.3 数组变量上一页下一页要 点8/8,3.2.4,字段变量,字段变量就是指数据表中,已定义的任意一个字段。,(记录由若干个字段组成),在一个数据表中,同一个字段名下有若干个数据项,而数据项的值取决于该数据项所在记录行的变化,所以称它为字段变量,也有人把字段变量称为,字段名变量,。,字段变量的,数据类型,有数值型、浮点型、货币型、整型、双精度型、字符型、逻辑型、日期型、日期时间型、备注型和通用型等。,上一页,下一页,要 点,11/29/2024,90,.,3.2.4 字段变量上一页下一页要 点8/8/2,记录是数据表中,一组数据项,的集合。,在同一个数据表中可以有若干个记录,每一个记录具有,相同的字段个数,。在数据表中记录的顺序不影响对记录的操作,上一页,下一页,要 点,3.2.5 记录,11/29/2024,91,.,记录是数据表中一组数据项的集合。上一页下一页要,3.2.6,对象(第,10,章),对象是数据存储器的一种。对象是类的实体,对象也是类的变量,它是任何具有属性和方法的信息的集合。,对象的建立可以通过设计器和,Create Object,( )函数实现。,上一页,下一页,要 点,11/29/2024,92,.,3.2.6 对象(第10章)上一页下一页要,内存变量的作用域是按变量在程序中的作用范围来区分的。,1,全局型,内存变量用,Public,命令定义(程序结束也不被释放,保存在内存中),2,局部型,变量用,Private(私有),命令定义(定义程序中有效,调用时亦有效),3,本地型,变量用,Local (局部),命令定义(只在定义它的程序中有效,运行完毕,从内存中释放),4.释放内存变量可用,Release、Clear All/Clear Memory,命令。,上一页,下一页,要 点,3.2.7 内存变量的作用域(P50),11/29/2024,93,.,内存变量的作用域是按变量在程序中的作用范围来区分,1,内存变量的,赋值,命令,Store, To,=,2,表达式的,输出,命令,?,(下一行输出)/,?, ,上一页,下一页,要 点,3.2.8 有关内存变量的操作,11/29/2024,94,.,上一页下一页要 点3.2.8 有关内存变量的,3,数据表与内存变量间,数据的传递,命令,在,Visual FoxPro系统中,使用Scatter命令或Gather命令,可以实现数据表与内存变量、数组间数据的传递。,Scatter Fields | Fields,Like | Fields Except ,Memo To Blank,上一页,下一页,要 点,11/29/2024,95,.,3数据表与内存变量间数据的传递命令上一页下一页要,11/29/2024,96,.,8/8/202396.,3.3,函数,根据每一个函数的功能,可将标准函数大致分为如下,11类,:,1,数值计算函数 2,字符处理函数,3,数据转换函数 4,
展开阅读全文