全国VFP笔试知识点
- 格式:doc
- 大小:105.00 KB
- 文档页数:15
VFP考试复习要点基本要求1、具有数据库系统的基础知识。
2、基本了解面向对象的概念。
3、掌握关系数据库的基本原理。
4、掌握数据库程序设计方法。
5、能够使用Visual FoxPro建立一个小型数据库应用系统。
考试要点梳理一、Visual FoxPro基础知识1、基本概念:数据库、数据模型、数据库管理系统、类和对象、事件、方法。
2、关系数据库(1)关系数据库:关系模型、关系模式、关系、元组、属性、域、主关键字和外部关键字。
(2)关系运算:选择、投影、联接。
(3)数据的一致性和完整性:实体完整性、域完整性、参照完整性。
3、 Visual FoxPro系统特点与工作方式: Windows版本数据库的特点。
数据类型和主要文件类型。
各种设计器和向导。
工作方式:交互方式(命令方式、可视化操作)和程序运行方式。
4、 Visual FoxPro的基本数据元素:常量、变量、表达式。
常用函数:字符处理函数、数值计算函数、日期时间函数、数据类型转换函数、测试函数。
二、Visual FoxPro数据库的基本操作1、数据库和表的建立、修改与有效性检验:(1)表结构的建立与修改。
(2)表记录的浏览、增加、删除与修改。
(3)创建数据库,向数据库添加或从数据库删除表。
(4)设定字段级规则和记录级规则。
(5)表的索引:主索引、候选索引、普通索引、唯一索引。
2、多表操作:(1)选择工作区。
(2)建立表之间的关联:一对一的关联;一对多的关联。
(3)设置参照完整性。
(4)表的联接JOIN:内部联接。
外部联接:左联接、右联接、完全联接。
(5)建立表间临时关联。
3、建立视图与数据查询:(1)查询文件的建立、执行与修改。
(2)视图文件的建立、查看与修改。
(3)建立多表查询。
三、关系数据库标推语言 SQL1、SQL的数据定义功能: CREATE TABLE-SQL。
ALTER TABLE-SQL。
2、SQL的数据修改功能:DELETE-SQL.UPDATE-SQL。
全国计算机VFP重要知识点(公共基础部分)很给力,绝对有用!第3部分第3章软件工程基础经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是软件生命周期、软件设计的基本原理,软件测试的目的、软件调试的基本概念,读者应对此部分进行重点学习。
详细重点学习知识点:1.软件的概念、软件生命周期的概念及各阶段所包含的活动2.概要设计与详细设计的概念、模块独立性及其度量的标准、详细设计常用的工具 3.软件测试的目的、软件测试的4个步骤、 4.软件调试的任务软件工程基本概念考点1 软件定义与软件特点考试链接:考点1在笔试考试中,是一个经常考查的内容,考核的几率为70%,主要是以选择题的形式出现,分值为2分,此考点为识记内容,读者应该识记软件的定义,特点及其分类。
软件指的是计算机系统中与硬件相互依存的另一部分,包括程序、数据和相关文档的完整集合。
程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令序列。
数据是使程序能正常操纵信息的数据结构。
文档是与程序的开发、维护和使用有关的图文资料。
可见,软件两部分组成:机器可执行的程序和数据;机器不可执行的,与软件开发、运行、维护、使用等有关的文档。
软件的特点:软件是逻辑实体,而不是物理实体,具有抽象性;没有明显的制作过程,可进行大量的复制;使用期间不存在磨损、老化问题;软件的开发、运行对计算机系统具有依赖性;软件复杂性高,成本昂贵;软件开发涉及诸多社会因素。
根据应用目标的不同,软件可分应用软件、系统软件和支撑软件。
小提示:应用软件是为解决特定领域的应用而开发的软件;系统软件是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件;支撑软件是介于两者之间,协助用户开发软件的工具性软件。
考点2 软件工程过程与软件生命周期考试链接:考点2在笔试考试中,在笔试考试中出现的几率为30%,主要是以选择题的形式出现,分值为2分,此考点为识记内容,读者应该识记软件生命周期的定义,主要活动阶段及其任务。
第一章数据库系统基础知识1.1数据处理与数据管理技术1.1.1数据处理与数据管理技术l 数据库技术是应数据处理发展的客观要求而产生的,反过来,数据库技术的发展又促进了数据处理的广泛应用l 数据处理是指数据的分类、组织、编码、存储、查询、统计、传输等操作,向人们提供有用的信息l 数据处理的对象数据可以是数值型数据,也可以是字符、文字、图表、图形、图像、声音等非数值型数据1.1.2数据管理技术的发展数据处理发展阶段l 人工管理阶段l 文件管理阶段l 数据处理发展阶段l 数据库管理阶段1.2数据库系统的组成l 一般认为数据库系统(Database System-DBS)是数据库、数据库管理系统、应用程序、数据库管理系统赖以执行的计算机软硬件环境及数据库维护使用人员的总称。
l 数据库l 数据库(Data Base-DB)是指按一定的数据结构进行组织的,可共享的,长期保存的相关信息的集合。
数据库中不仅保存了用户直接使用的数据,还保存了定义这些数据的数据类型、模式结构等数据――“元数据”l 数据库系统l 数据库管理系统(Data Base Management System-DBMS)是对数据进行管理的软件系统,它是数据库管理系统的核心软件。
如ORACLE、SQL-SERVER、ACCESS等由计算机软件生产企业提供的数据库管理系统l 应用程序l 一般是指完成用户业务功能的利用高级语言编写的程序。
高级语言可以是VB、DELPHI、POWERBUILDER等,应用程序通过数据库提供的接口对数据库的数据进行增加、删除、修改、查询、统计等操作l 计算机软硬件环境l 计算机软硬件环境是指数据库管理系统、应用程序赖以执行的环境。
包括计算机硬件设备,网络设备,操作系统,应用系统开发工具等l 相关人员l 相关人员是指在数据库系统的设计、开发、维护、使用过程中,所有参与的人员。
主要有数据库管理员(Data Base Administrator-DBA)、系统分析设计人员、系统程序员、用户等,其中数据库管理员在大型数据库应用中负有重要的职责,负责对数据库进行有效的管理和控制,解决系统设计和运行中出现的问题1.3数据库系统的模式结构数据库系统的结构定义为三级模式结构:外部层、概念层、和内部层1.3.1数据库,数据库系统和数据库管理系统三者的区别和联系数据库是指以一定的组织形式存放在计算机存储介质上的相互关联的数据的集合。
计算机vfp二级考试笔试知识点1.数据库:是长期保存在计算机外存上有结构的,可共享的数据集合。
它不仅包括描述事物的数据本身,而且还包括相关事物之间的联系。
2.数据库管理系统:它是数据库系统的核心组成部分。
3.数据库系统:是由数据库,数据库管理系统等构成的人机系统。
4.数据模型:主要数据模型有层次模型,网络模型,关系模型(关系模型是一张由行和列组成的二维表,有一对多,一对一,多对多三种联系)。
5.关键字:在关系模型中称码,是表中的一个字段或多个字段的组合。
它可以唯一地确定一条记录。
它不能重复值和为空。
6.专门的关系运算:选择:从数据表中找出满足给定条件的记录的操作(从行选)。
投影:从数据表中指定若干属性组成新的数据表的操作(从列选)。
连接是数据表的横向结合。
自然连接:在连接运算中,按照字段值对应相等为条件进行的连接操作称为等值连接。
自然连接是去掉重复属性的等值连接。
7.选择“窗口”菜单中的“命令”命令,或单击常用工具栏上的“命令窗口”按钮,或按组合键“Ctrl+F2"/"Ctrl+F4"来控制命令窗口的显示或关闭。
8.文件扩展名及其代表的文件类型:.App vfp应用程序.pjx 项目文件.dbc 数据库文件.dct数据库备注文件.dbf数据表文件.fpt数据表备注文件.cdx数据表复合索引文件.idx独立索引文件.qpr生成的查询文件.prg源程序文件.scx表单文件.sct表单备注文件.mnx菜单文件.mnt菜单备注文件.mpr自动生成的菜单源程序文件.frx报表文件9.货币数据在存储和计算时,采用4位小数。
字符型常量是由定界符(单引号,双引号或中括号)括起来的字符串。
逻辑型数据用1个字节表示。
日期型数据用8个字节表示。
10.自由表的字段名最长为10个字符,数据库表的字段名最长为128个字符。
备注型:一个存储不定长的字符型数据,其在表中占用4个字节。
备注型,通用型在一个表中都只产生一个备注型,通用型文件。
vfp考试复习要点(一)一.选择题FoxPro是一种关系数据库管理系统,所谓关系是指(数据模型符合一定条件的二维表格式).FoxPro中索引类型包括(主索引,候选索引,唯一索引,普通索引).事件在(用鼠标单击对象)时引发.4.若想选中表单中的多个控件对象,可按住(shift)键的同时再单击欲选中的控件对象.("5+5")的值为.("5"+"5")的值为.7.设当前打开的表中有一字段变量"姓名",当前值为"王华",又有一内存变量"姓名",其值为"李敏",则命令?姓名的值应为(王华).8.依次执行以下6条命令:SELECT 1 USE F1SELECT 2 USE F2SELECT 3 USE F3现在要给F1追加记录,但又不改变当前表的打开状态,应该使用命令序列.9. 建立一个库文件结构,库中有姓名字段(C型,6字节)、出生年月字段(D型)10.和婚否字段(L型),则该库中总的字段宽度是(16).11.修改库文件结构时,下列可能使库中数据丢失的操作是(改变一个字段的数据类型).12.在查询设计器中,用于编辑联接条件的选项卡是(联接).13.执行SET EXACT OFF 命令后,再执行"蓝天"="白云",显示结果是(.f.).14.假定表单中包含有一个命令按钮,在运行表单时单击命令按钮时发生 ___按钮的click___事件15.用来指明复选框的当前选中状态的属性是_value_____。
二.填空题1. 数据库表之间的一对多联系通过主表的__候选和主____索引和子表的_普通_____索引实现。
2. 要想改变关系中属性的排列顺序,应使用关系运算中的__投影___运算.3.?ROUND,-2)____500_.4.设数据表文件中有10条记录,当前记录号为1,且无索引文件处于打开状态.5.若执行命令SKIP -1后再执行?RECNO()命令,屏幕将显示_1____.6.设当前数据库有N条记录,当函数EOF()的值为.T.时,函数RECNO()的显示结果是___N+1__.7.若给定某查询运行该查询的命令是__do 。
第1章数据结构与算法经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是算法复杂度、数据结构的概念、栈、二叉树的遍历、二分法查找,读者应对此部分进行重点学习。
详细重点学习知识点:1.算法的概念、算法时间复杂度及空间复杂度的概念2.数据结构的定义、数据逻辑结构及物理结构的定义3.栈的定义及其运算、线性链表的存储方式4.树与二叉树的概念、二叉树的基本性质、完全二叉树的概念、二叉树的遍历5.二分查找法6.冒泡排序法1.1算法考点1 算法的基本概念考试链接:考点1在笔试考试中考核的几率为30%,主要是以填空题的形式出现,分值为2分,此考点为识记内容,读者还应该了解算法中对数据的基本运算。
计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法。
1.算法的基本特征:可行性、确定性、有穷性、拥有足够的情报。
2.算法的基本要素:(1)算法中对数据的运算和操作一个算法由两种基本要素组成:一是对数据对象的运算和操作;二是算法的控制结构。
在一般的计算机系统中,基本的运算和操作有以下4类:算术运算、逻辑运算、关系运算和数据传输。
(2)算法的控制结构:算法中各操作之间的执行顺序称为算法的控制结构。
描述算法的工具通常有传统流程图、N-S结构化流程图、算法描述语言等。
一个算法一般都可以用顺序、选择、循环3种基本控制结构组合而成。
考点2 算法复杂度考试链接:考点2在笔试考试中,是一个经常考查的内容,在笔试考试中出现的几率为70%,主要是以选择的形式出现,分值为2分,此考点为重点识记内容,读者还应该识记算法时间复杂度及空间复杂度的概念。
1.算法的时间复杂度算法的时间复杂度是指执行算法所需要的计算工作量。
同一个算法用不同的语言实现,或者用不同的编译程序进行编译,或者在不同的计算机上运行,效率均不同。
这表明使用绝对的时间单位衡量算法的效率是不合适的。
撇开这些与计算机硬件、软件有关的因素,可以认为一个特定算法"运行工作量"的大小,只依赖于问题的规模(通常用整数n表示),它是问题规模的函数。
一、有效性规则和参照完整性1.有效性规则先选中要求设置的字段,(1)“规则”:逻辑型表达式即SQL格式表达式。
例:年龄是15-20:年龄>=15 and 年龄<=20(2)“信息”:字符型表达式,直接摘抄加“”(英文状态)(3)“默认值”:看选中的字段是什么类型2.参照完整性(1)判断一方(没有重复字段的表)和多方(有重复字段的表)(2)一方建主索引,多方建普通索引(3)由一方向多方扯一条线(4)清理数据库(数据库—清理数据库,如果遇到“文件正在使用暂不能发布pack命令,”此时close all,再重新以独占方式打开数据库再进行一次清理)(5)右键编辑参照完整性(两个永久性联系须一一设置其参照完整性)二、SQL语句1.格式:格式一:Select [top]字段1/字段2…… from表1,表2…. where连接条件and(or) 筛选条件{group by 某一字段 [haing count(字段)] } order by字段1 asc/desc, 字段2asc/desc…… into table表格式二:Select[top]字段1/字段2…… from表1 join 表2 join表3…. on连接条件(返回来写) where筛选条件 {group by 某一字段 [haing count(字段)] } order by字段1 asc/desc, 字段2 asc/desc…… into table表⑴.“字段1/字段2……”,根据题目要求,搜索什么字段写什么字段,若其中某一字段在表中没有则认定为是起的新名字,在该字段前加as,之后向函数avg(),sum(),max(),min(),count()。
⑵.“group by 某一字段 [haing count(字段)]”为难点。
考虑用不用group by,首先在草稿纸上或脑海生成题目要求的表,选取一个个例填写分析是否用得到group by,按什么分组。
VFP复习--------------------------------------------------------------------------------第一部分:VFP初步知识1、性能指标2、退出quit3、扩展名:DBF和FPT,MEM,DBC、DCT和DCX、PJX、PRG和FXP、IDX和CDX、TXT、SCX4、工作方式:命令方式、程序方式(other:菜单方式、工具栏方式)5、向导:工具栏、工具菜单栏、新建都可以使用向导6、项目管理器的操作(如何添加、修改表单和程序)第二部分:VFP数据基础(重点、难点)1、常量(判断的唯一标准是定界符)字符型C:如‟人们‟,“china ”,[123456]数值型N:如 123456,789货币型Y:如 $1.2345(一般只保留四位小数)日期型D: 用户输入时可选择两种方式:以精确格式输入:{^2006-09-02};或者以VFP系统默认的格式输入,视具体的默认格式而定。
计算机输出时以VFP系统默认的格式。
日期时间型T:同上类似逻辑型L:.t. .f. .y. .n.(有且仅有此四种表达)2、变量(三要素:变量名,变量值,变量类型;其中变量值和变量类型具有赋值的常量来确定。
)赋值方式:1 变量=表达式如:x=.t.2 store 表达式 to 内存变量表如:store …123‟ toa,b,c,abc3 数组变量:一维数组如 dime a(8);二维数组如 dime a(2,3)显示方式:list/display memo like 通配符保存方式:save to 文件名 all like/except 通配符恢复: rest from 文件名清除:清除所有:clear memo清除特定:release 内存变量表3、运算符:按优先级来排序;算术运算符:();**或^;*/%;+ -字符运算符: + - $关系运算符:<> >= <= == != <> # $ (优先级相同)逻辑运算符!/not-> and -> or4、函数:函数的学习方法:主要掌握函数功能,函数名及形式,函数返回值,函数处理范围,函数参数的具体含义。
复习内容:一、VISUAL FOXPRO基础知识(一)基本概念数据库、数据模型、数据库管理系统、类和对象、事件、方法。
1、数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系:DBS包括DB和DBMS2、数据库系统的核心是:数据库管理系统(DBMS)3、数据模型(1)实体,实体集,属性,联系(2)实体联系的类型:一对多,一对一,多对多(3)数据模型类型:层次模型,网状模型,关系模型(vfp是基于关系模型的数据库管理系统)(二)关系数据库1、关系数据库:关系模型、关系模式、关系、元组、属性、域、主关键字和外部关键字。
(1)关系就是一张二维表,二维表的行就是元组也称记录,二维表的列就是属性也称字段。
(2)关键字及外部关键字(3)关系运算:①传统关系运算:并(∪),差(-),交(∩)②专门的关系运算:选择、投影、连接2、数据的一致性和完整性:实体完整性(通过主索引和候选索引控制)、域完整性(通过有效性规则控制)、参照完整性(主关键字和外关键字控制)(插入、删除、更新规则)。
(三)VISUAL FOXPRO系统特点与工作方式:1、数据类型和主要文件类型。
(1)数据类型:C,N,L,D,T,Y,M,G及其定界符(哪些是定长的:L:1,D:8,T:8,M:4,G:4)(日期型数据的相关设置命令,如set century on 等)(2)主要文件类型:表文件:.dbf,表备注:.fpt ,索引文件:.cdx,.idx数据库文件:.dbc,数据库备注:.dct,数据库索引:.dcx程序文件:.prg,查询文件:.qpr表单文件:.scx,表单备注:.sct菜单文件:.mnx,菜单备注:.mnt,菜单程序文件:.mpr报表文件:.frx,报表备注:.frt2、工作方式:交互方式(命令方式、可视化操作)和程序运行方式。
(四)VISUAL FOXPRO的基本数据元素:1、常量、变量、表达式。
(1)简单内存变量,数组①数组的定义:dimension 或者declare②数组的赋值:分别赋值,整体赋值(所有元素赋予相同的值,=或者store)。
VFP复习资料一.判断题1.VFP数据库管理系统的数据模型是关系型。
√2.可见菜单系统添加初始化代码来创建环境、定义内存量、打开文件。
√3.报表设计中的布局文件保存了要输出表中的字符。
×4.报表设计中的字段控件可用于表示出现在报表中的字。
×5.表单设计中的数据环境是表单数据来源。
√6.表单打开的时候,数据环境中的表可自动打开。
√7.在工作区一打开的表文件都各自有自己的记录指针。
√8.函数或子程序定义中的RETURN可以省略。
×9.VFP 的注释可为:NOTE│* 或 && 。
√10.VFP中的NULL表示未知数据,便于与含有NULL的SQL数据库一起工作。
√11.索引是改变表的物理顺序,排列是改变表的逻辑顺序。
×12.视图与表相类似的地方是:可用来更新其中信息,并将更新信息永久保存在磁盘上。
√二.单项选择题在每小题列出的四个备选项中只有一个最符合题目要,请将其代码填写在题后的括号内。
1.数据库系统的核心是(B)A.数据库B.数据库管理系统C.模拟模型D.软件工程2.函数UPPER(“12ab34CD”)的结果是(A)A.12AB34 CDB.12ab34CDC.12ab34cdD.12AB34cd3.执行下列语句,其函数结果为(B)STORE -100 TO X?SINT(X)*SQRT(ABS(X))A.10B.-10C.100D.-1004.在Visual FoxPro 中,下列各项的数据类型所占字符的字节数相等的是(D)A.日期型和逻辑型B.日期型和通用型C.逻辑型和备注型D.备注型和通用型5.要将数据库表从数据库中移出成为自由表,可使用命令(B)A.DELETE TABLE <数据表名>B.REMOVE TABLE <数据表名>C.CROP TABLE <数据表名>D.RELEASE TABLE <数据表名>6.执行下列程序:CLEARDO ARETURNPROCEDURE APRIBATE SS=5DO B?RETURNPROCEDURE BS=S+10RETURN程序运行的结果为(C)A.5B.10C.15D.程序错误,找不到变量7.下列选项中,不属于SQL数据定义功能的是(A)A.SELECTB.CREATEC.ALTERD.DROP8.下列SQL命令格式可以用来修改字段名的是(C)A.CREATE TABLE 数据表名 NAMEB.ALTER TABLE 数据表名 ALTER 字段名C.ALTER TABLE 数据表名 RENAME COLUMN 字段名D.ALTER TABLE 数据表名 ALTER 字段名 SET DEFAULE9.执行如下命令,最后输出的结果是(B)X=STR(125,3,0)Y=RIGHT(X,2)Z=”&X--&Y”?&ZA.125--25B.100C.123D.12010数据库表“学生信息”中字段“是否党员”为逻辑型字段,要统计表中学生党员人数的正确操作为(C)A.SUM FOR 是否党员B.SUM FOR 是否党员=.F.C.COUNT FOR 是否党员D.COUNT FOR 是否党员=.F.11.在VFP中建立索引的作用之一是(C)A.节省存储空间B.便于管理C.提高查询速度D.提高更新的速度12.建立临时关联的方式是(B)A.只能通过索引关键字B.可以通过索引关键字或记录号C.只能通过记录号D.以上都不正确13.默认情况下的表间连接类型是(C)A.左连接B.右连接C.内连接D.全连接14.不能直接修改表中的记录值的命令是(A)A.LOCATEB.CHANGEC.REPLACED.EDIT15.在SELECT语句中,为了查询结果中消除重复记录,应使用(B)语句A.PERCENTB.DISTINCTC.TOP ND.WITH TIES16.在Form1.scx设计中,当前选中表单Forml.的控件Lablel,要改变Lablel的caption 属性,错误的是(D)blel.caption=”确定”B.This.caption=”确定”blel.caption=”确定”blel.caption=”确定”18.有以下VFP程序:SET TALK OFFDO WHILE .T.CLEAR?”1.查询 2.打印”?”3.维护 4.提出”ACCEPT”请输入选中(1-4:”DO CASECASE XZ=’1’DO CXCASE ZX=’2’DO DYCASE XZ=’3’DO WHCASE XZ=’4’EXITOTHERWISELOOPENDCASERETURN运行此程序时,如从键盘上输入了字符啊”5”将会(B)A.程序停止运行B.重新显示菜单C.死循环D.程序出错19.有以下循环语句DO WHILE .T.IF 性别!=”男”EXITENDIFIF 政治面貌=”群众”DELETEENDIFSKIPENDDO下列命令中,与这个循环等效的VFP命令是(A)A.DELETE FOR 性别=”男” .AND. 政治面貌=”群众”B.DELETE WHILE 性别=”男” .AND. 政治面貌=”群众”C.DELETE FOR 性别=”男” WHILE 政治面貌=”群众”D.DELETE WHILE 性别=”男” FOR 政治面貌=”群众”20.关闭当前表单的程序代码是Thisform.Release,其中Release是表单对象的(D)A.标题B.属性C.事件D.方法21.在表单中,Caption是对象的(A)属性A.标题B. 名称C.背景透明D.字体尺寸22.如果在命令窗口执行命令”LIST名称”,主窗口中显示:记录号名称1 电视机2 计算机3 电话线4 电冰箱5 电线假定名称字段为字符型,宽度为6,那么下面程序字段的输出结果是(A)GO 2SCAN NEXT 4 FOR LEFT(名称,2)=”电”IF RIGHT(名称,2)=”线”EXITENDIFENDSCAN?名称A.电话线B.电线C.电冰箱D. 电视机23.用二维表来表示实体及实体之间联系的数据模型称为(D)A.实体一联系模型B.层次模型C.网状模型D.关系模型24.使用命令DIMENSION A(7,4)定义的数组包含的数组元素个数为(C)A.11个B.3个C.28个D.26个25.将内存变量定义为局部变量的Visual FoxPro命令是(B)A.LOCALB.PRIVATEC.PUBLICD.GLOBAL26.下列VFP表达式运算结果为日期型的是(C)A.04/05/97-2B.CTOD(‘04/0597’)-DATE( )C.CTOD(‘04/05/97’)-3D.DATE( )”04/0597”27.职工工资数据库文件按基本工资字段升序索引后,再执行GO TOP命令,此时当前记录号是(B)A.1B.基本工资最少的记录号C.0D.基本工资最多的记录号28.当前数据库文件有20条记录,当前记录号是10,执行命令LIST REST 以后,当前记录号是(C)A.10B.20C.21D.129.对学生成绩数据库文件按总分( N(6,2))降序,姓名(C(8))升序索引,应当使用命令(D)A.INDEX ON ABC TO ,总分,姓名B.INDEX ON ABC TO -总分,姓名C.INDEX ON ABC TO STR (-总分 5,1)+姓名D.INDEX ON ABC TO STR (100-总分)+姓名30.把当前数据库文件中”性别”字段的值全部清除,但仍保留该字段,应当使用命令(C)A.MODIFY STRUCTUREB.DELETEC.REPLACED.ZAP31.设职工数据和按”工作日期”索引的索引文件已经打开,要把记录指针定位到工作刚好满30天的职工,应使用命令(C)A. FIND DATE ()-30B.SEEK DATE () 30C.FIND DATE ()30D.SEEK DATE ()-3032.在打开的表中,要永久删除当前记录开始的10条记录,可用(A)A.先执行DELETE NEXT 10 命令,后用PACK 命令B.先执行DELETE RECORD 10 命令,后用PACK 命令C.先执行DELETE FOR RECORD > 10 命令,后用PACK 命令D.ZAP NEXT 1033.按数值型字段”总分“进行索引,使其按降序排列的命令(A)A.INDEX ON -总分 TO WPB.INDEX ON 总分 /A TO WPC.INDEX ON 总分 TO WPD.INDEX ON 总分 /D TO WP34.函数LEN(SPACE (5)-SPACE(1))的返回值是(C)A.错误信息B.17C.6D.435.从表中CUSTOMER中提取所有记录生成查询,并将查询结果放于表MY CURSOR的SQL命令是(B)A.SELECT *FROM CUSTOMER INTO CURSOR MYCURSORB.SELECT *FROM CUSTOMER INTO TABLE MYCURSORC.SELECT *FROM CUSTOMER INTO INTO TABLE MYCURSORD.三.程序填空题请在每小题的空格中填上正确答案。
vfp考试复习(fùxí)要点(三)一.选择题1.关系(guān xì)是指(y元组的集合(jíhé))2.Visual FoxPro中索引类型(lèixíng)包括(主索引(suǒyǐn),唯一索引,候选索引,普通索引).3.“选择”操作是根据某些条件对关系做(水平分割).4.若想选中表单中的多个控件对象,可按住(shift)键的同时再单击欲选中的控件对象.5.DAY("01/09/02")返回的值是(错误信息).6.{^2002-06-30}+29运算结果是(07|29|02).7.对表进行水平方向的分割用的运算是(选择).8.如果要更改表中某一字段的类型,应在"表设计器"的(字段)选项卡中进行.9.修改库文件结构时,下列可能使库中数据丢失的操作是(改变一个字段的数据类型).10.下列在"项目管理器"中移去数据库文件的操作方法正确的是(选定文件,按DELETE键。
选定文件,单击项目管理器上的移去命令。
选定菜单,单击项目菜单中的移去文件命令).11.下列打开查询设计器的命令是(modify query).12.有如下FoxPro程序:SET TALK OFFM=0N=100DO WHILE N>MM=M+NN=N-10ENDDOMRETURN运行此程序显示M的值是(100).13.为表单MyForm添加事件或方法代码,改变该表单中的控件Cmdl的Caption属性的正确命令是____thisform.cmdl.caption=’“最后一个”__。
14.关闭表单的最常用方法是__release___。
15.假设系统中存在menu菜单程序,运行该菜单程序应输入(do<menu.mpr>)命令.二.填空题1.Visual FoxPro6.0有__4___种索引.2.为了在文本框输入时隐藏信息(如显示"*"),需要设置该控件的__PasswordChar___属性。
第一章数据库基础知识1.基本概念:数据库、数据管理经历的五个阶段、数据库管理系统、数据库应用系统、数据库管理员。
2.数据库系统的组成:硬件系统、数据库集合、数据库管理系统及相关软件、数据库管理员和用户。
其中数据库管理系统是数据库系统的核心。
3.数据库系统的特点:(1)实现数据共享,减少数据冗余(2)采用特定的数据模型(3)具有较高的数据独立性(4)有统一的数据控制功能4.数据模型:实体间联系的种类:一对一、一对多、多对多。
5.数据模型的三种类型:层次模型、网状模型和关系模型。
6.关系数据库基本术语:关系、元组、属性、域、关键字、外部关键字。
关系的特点7.关系运算:传统的集合运算(并、差、交)另一类是专门的关系运算(选择、投影、连接、等值连接、自然连接)8.VF两种运行方式:菜单方式和交互式方式(命令方式和程序方式)9.所谓项目是指文件、数据、文档和对象的集合,其扩展名为 .pjx。
10.项目管理器包含的选项卡:全部、数据、文档、类、代码、其他11.项目管理器各选项卡所包含的文件有哪些?12.项目管理器可以完成对文件的新建、添加、移去、删除,但不包含重命名。
第2章1.常量的种类:数值型、字符型、日期型、日期时间型和逻辑型在书写字符型、日期型、日期时间型和逻辑型需要加定界符2.变量是值能够随时改变的量。
变量名的命名规则:以字母、汉字和下划线开头,后接字母、数字、汉字和下划线构成,不包含有空格3.当内存变量与字段变量同名时,要访问内存变量需加前缀M.(或M->),例如M.姓名4.数组定义的格式 DIMENSION 数组名()、创建数组后,系统自动给每个数组元素赋以逻辑假.F.5.表达式的类型:数值表达式、字符表达式、日期时间表达式和逻辑表达式。
每个表达式的运算规则与结果。
6.运算符 $ 称为子串包含测试,格式<字符表达式1> $ <字符表达式2>7.SET EXACT ON │OFF 的区别与含义。
全国计算机二级考试VFP知识点12-06-11 26291、数据处理的中心问题是数据管理。
多年来,数据管理经历了人工管理阶段、文件管理阶段、数据库系统阶段。
2、人工管理阶段面对的主要问题:1、数据不能独立。
2、数据不能长期保存。
3、文件管理阶段面对的主要特点:1、数据与程序分开。
2、数据能长期保存。
3、数据没有完全独立。
4、存在数据冗余。
5、数据不能集中管理。
4、数据库系统阶段特点:1、实现了数据的结构化。
2、实现了数据共享。
3、实现了数据独立。
4、实现了数据统一控制。
5、三者之间的区别:主要在于数据与程序之间的关系。
在人工管理阶段,数据与程序不具有独立性。
在文件系统阶段,程序与数据有了一定的独立性。
在数据库系统阶段提供了数据与应用程序的独立性。
6、数据库(DATA BASE简写为DB)是按一定的组织形式存储在一起的相互关联的数据集合。
数据库具有数据的结构化、独立性、共享性、冗余量小、安全性、完整性与并发控制的基本特点。
7、数据库管理系统(DATA BASE MANAGEMENT SYSTEM简写为DBMS)是数据库系统的核心部分。
而数据库运行管理与控制例行程序是数据库管理系统的核心部分。
8、数据库系统(DATA BASE SYSTEM简写为DBS)具体包括计算机硬件、操作系统、数据库、数据库管理系统与建立在该数据库之上的相关软件、数据库管理员与用户等5个部分。
9、数据库应用系统(DATA BASE APPLICATION SYSTEMS 简写为DBAS)通常由数据库与应用程序组成。
10、数据模型是指数据库的组织形式,它取决于数据库中数据之间联系的表达方式。
数据库管理系统所支持的数据模型分为3类,层次模型、网状模型与关系模型。
11、关系模型:用二维表结构来表示实体以与实体之间联系的模型称为关系模型,在关系模型中把数据看成是二维表中的元素,一张二维表就是一个关系。
12、关系术语:1、关系:一个关系就是一张二维表,在VFP中,一个关系存储为一个文件,文件的扩展名为.dbf,称为表。
新建数据库的方法:1、文件菜单--新建--数据库--新建文件--找到保存位置--输入库名--保存;2、CREATE DATABASE;关闭数据库的方法:close database(当前)打开数据库的方法:1、文件菜单--打开--找到位置--文件类型选择数据库--选择库名--打开;2、open database;modify database(显示数据库设计器)删除数据库的方法:先关闭数据库--DELETE DATABASE 路径+库名;eg:delete data d:\09年四月一班\学校管理建立数据库表:1、文件菜单--新建--表--新建文件--找到保存位置--输入表名--保存;2、CREAT表的操作:自由表和数据库表;1、自由表:不在数据库中的表;2、数据库表:必须存在于数据库中;3、自由表与数据库的区别:1、自由表字段名的宽度最多为10个字符,无主索引,无有效性规则框;2、数据库表字段名的宽度最多为128个字符,有主索引,有有效性规则框;3、自由表与数据库表的转换:(默认目录设置在先)(1)数据库到自由表1、打开数据库--右击表--删除--移去--是;2、REMOVE TABLE 表名(2)自由表到数据库表1、右击数据库设计器--添加--找到表--确定2、ADD TABLE 表名;表的基本操作:1、create;建立表;2、USE 打开表/关闭表;3、浏览表:BROWS/显示--浏览;修改表的结构:打开表设计器窗口(1)打开表后--显示菜单--表设计器;(2)MODIFY STRUCTURE;null:空值(暂时无法确定的值)不等于0空值的设置:在建表时(表设计器窗口-选择要设置空值字段--将NULL按钮选中打上对号--默认值对话框中输入.null.)调整日期的显示格式:将日期的格式设为年月日:set date to ymd将日期的格式设为月日年:set date to mdy设置年份的位数:set century on(4位)set century off(2位)设置日期的分隔符:set mark to "-"或"."或"/"表的记录修改:1、增加记录:显示--追加方式;CTRL+Y;APPEND BLANK/APPEND2、删除记录:(逻辑删除和物理删除)1、逻辑删除:即给记录添加删除标记;(可以恢复)(1)在记录号处单击使之颜色变为黑色;(2)DELETE ALL(全部逻辑删除);RECALL ALL(全部恢复);(3)DELETE FOR 表达式eg:DELETE FOR 仓库号="WH8"(字符型数据所以要加定界符,字符型的定界符"" '' [])2、物理删除:彻底的删除;(不能恢复)(1)PACK:删除带有删除标记的记录;(2)ZAP:清空表中的记录;插入记录:(1)INSERT :在当前记录之后插入;(2)INSERT BEFORE:在当前记录之前插入;修改记录:1、REPLACE 要修改的字段with 表达式ALL;eg:repla 面积with 面积+100 all2、REPLACE 要修改的字段with 表达式FOR 条件;eg:repla 数学with 数学-10 for 姓名="CC"3、REPLA 要替换的字段with 值for 条件eg:repla 姓名with "优秀生" for 总分>150一、数据的完整性:确保数据正确的特性;主索引(primary key)侯选索引(candidate)唯一索引(unique)用命令建立索引(不能主索引)INDEX ON 索引表达式tag 索引名索引的英文名称eg:index on 姓名tag 姓名candidate升序ascending (asc) 降序descending (desc)eg:index on 姓名tag 姓名desc candidate(以姓名降序建立侯选索引);用命令删除索引:DELETE TAG ALL域完整性:控制用户输入数据的范围(有效性规则)规则框:用于输入逻辑表达式;eg:性别="男" or 性别="女"信息框:用于显示出错信息;字节符表达式;eg:"输入的信息不对"默认值:与字段类型相同;eg:"女"参照完整性:通过修改一张表,将相应的修改结果反映到另一张上;父表:建立主索引的表;子表:建立普通索引的表;父子关系;编辑参照完整性的步骤:1、打开同一个数据库有联接的两张表观察;2、为父表建立主索引,为子表建立普通过引3、通过索引建立永久性的联系;4、清理数据库pack database 目的是物理删除带有删除标记的记录;5、双击连接线--编辑参照完整性;编辑参照完整性的步骤:1、打开同一个数据库有联接的两张表观察;2、为父表建立主索引,为子表建立普通过引3、通过索引建立永久性的联系;4、清理数据库pack database 目的是物理删除带有删除标记的记录;5、双击连接线--编辑参照完整性;规则:更新规则:更改;级联:改父表时子表随之修改;限制:只能在父表中改子表中没有的相关记录;忽略:不做限制;删除规则:(逻辑删除)级联:删除父表中的记录时,子表中的相关记录随之删除;限制:只能在父表中删除子表中没有的相关记录;忽略:不做限制;插入规则:限制:只能在子表中插入父表中有的相关记录;忽略:不做限制;补充第三章物理排序:1、打开要被排的表;2、sort to 新表名on 排序字段名升降序;3、打开表4、浏览表;eg:use 仓库表sort to aa on 面积ascendinguse aabrows临时联系:记录指针的同步移动;工作区:当前工作的区域;在VFP中共有32767个工作区,最大工作区号:32767 最小工作区号1 空闲工区号0命令格式(例如)use 仓库表in 1 order 仓库号use 职工表in 2 order 仓库号set relation to 仓库号into 职工表项目文件(pjx):包含了VFP中的所有文件,并且提供管理的平台;建立:CREATE PROJECT;指针的移动:goto n:指针移到第N条;skip :向下移动;SKIP -1:向上移动;locate for 表达式:光标条件移动;go top:表头;go bottom:表尾;注:_screen.fontsize=15将主窗口中字号调至15号;第二章第一节:常量、变量、表达式;1、常量:一个固定不变的量;数值型常量:0-9个数字加正负符号加小数点构成;2、y货币型常量:$ ¥eg:$588.003、字符型常量:必须定界符("" [] '')eg "abc" "" " " ['"dkdkkd"']4、日期型常量:定界符{^年月日}严格的日期格式:年月日 4传统的日期格式:月日年 2set date to ymdset date to mdyset cent onset cent offset mark to "-"5、日期时间常量:定界符号{^年-月-日,时-分-秒}6、逻辑型常量:.t.和.f.定界符是..变量:其值可以不断发生改变的量;内存变量:简单的变量;eg:a=10 a为变量名,=赋值符号,10为值;意思是将10赋给变量a;STORE 值to 变量名列表eg:store 100 to a,b,c,d字段变量:表中的字段名;注VFP中的输出语句是?:在不同行输出;??:在同行输出;显示内存变量:LIST MEMORY LIKE A清除内存变量:clear memory/release all;数组:内存开辟的一片连续的存储区域;定义数组:DIMENSION 数组名(元素)DECLARE 数组名(元素)eg:dimension aa(5) 一维数组;eg:dimension bb(2,3)二级数组;赋值数组:数组名(元素)=值eg:aa(1)=100访问数组:?数组名(元素)eg:aa(1)数组的使用:数组中的记录复制表中:1、定义数组;2、赋值数组;3、打开表;4、追加空记录;5、GATHER FROM 数组名;6、浏览表;eg:declare aa(3)aa(1)="WH6"aa(2)="汉阴"aa(3)=270use 仓库表append blankgather from aabrows表中的数据复制到数组中:1、打开表2、SCATTER TO 数组名;3、访问数组;eg:use 职工表scatter to aa?aa(1)表达式:由常量变量函数通过特定的运算符连接起来的式子;数值型表达式:()**^ */% + -字符型表达式:+ -+:连接两个字符串;-:连接两上字符串,并且将前字符串的尾总空格移到新串的尾部;表达式:数值表达式:字符表达式:日期表达式:日期型;注:日期与日期不能相加;天数不能减日期;日期时间不能加日期时间;关系表达式:> >= < <= = == (!=<>#) $ 返回的结果为逻辑型;设置字符串的比较类型:工具菜单--选项--数据--排序依据--拼音;SET COLLATE TO "pinyin"拼音状态下:后面字母大于前边的字母,并且大写字母大于小写字母;eg:"张三">"李四" .t. "A">"a" .t.机内码状态(machine):后面字母大于前边的字母,并且小写字母大于大写字母;eg:"A">"a" .f.笔画状态(stoke):笔画多的大于笔画少的;逻辑表达式: not and ornot:非;相反值;and:与;前后两个表达式都为真时结果为真,否则为假;OR:或;只要有一个为真,结果都为真;优先级:NOT AND OR所有表达式综合在一起的优先级:()数值字符日期关系逻辑函数:数据运算或转换功能;abs:绝对值;sqrt:求平方根;PI():3.14ROUND():四舍五入;参数2如果为正数表对小数部分取,如果为负数表对整数部分取;mod()取余%字符函数:自变量一般为字符型;LEN()宽度;SPACE():生成空格的函数;LTRIM():取左边空格;TRIM():取右边空格;ALLTRIM():取前后空格;left():从左边取;RIGHT():从右边取;substr():从中间取;字符函数:自变量一般为字符型;LEN()宽度;SPACE():生成空格的函数;LTRIM():取左边空格;TRIM():取右边空格;ALLTRIM():取前后空格;left():从左边取;RIGHT():从右边取;substr():从中间取;occurs():子串出现次数;at():位置;act():位置;(不区分大小写)STUFF():子串替换函数;(由字符表达式2替换字符表达式1中由起始位置指定宽度的字符)chrtran():字符替换函数;LIKE()字符串匹配函数;*:任意的多个字符;?:任意的一个字符;日期时间函数:date()time() 字符型;datetime()STR()数值转换为字符;VAL()字符转换数值;CTOD() c-dDTOc() d-cttoc() t-cctot() c-t&:宏替换函数,替换的是字符型变量内的值;测试函数:ISNULL()空值;BOF()表头表的第一条记录的上一条记录BOF为真;EOF()表尾表的最后一条记录的下一条记录EOF为真程序:能够完成一定任务多条有序命令集合;建立文件:MODIFY COMMAND程序文件扩展名.prg运行程序:DO 程序文件名.prg;CTRL+E;保存程序:CTRL+S;程序分为三种结构:顺序结构:从程序的第一条开始执行到程序的最后一条;输入语句:INPUT "提示符" to 变量名(任意)ACCEPT "提示符" to 变量名(字符)set talk off:屏蔽所有信息;set talk on:打开所有信息;选择结构:根据条件进行选择满足条件的语句执行;if 条件if 条件语句语句else endif语句endif(竖着看)编辑程序:1、通过键盘输入学生的三门成绩,用IF语句判断三门之和是否大于285分如果是输入优秀,如果语数之和大于200分显示语数好,如果英语>=90显示英语好,否则显示仍努力!2、已知表(姓名语文数学英语学分)表中有记录,根据表中的语数英计算学分,如果语文>=60 学分2分,数学>=60 学分为3分,英语>=60学分为4分;3、已知表(姓名三好生l,优秀干部l,少数民族l 学分)计算学分如果学生是三好生学分为5分,如果是优秀干部学分为10分,少数民族学分为15分.最后算总学分;4、用DO语句计算100以内的偶数和奇数之和第四章关系数据库标准语言SQL语句1、数据查询功能:简单查询:对一张表的查询;sele 要查询的字段from 表名where 条件查询结果以浏览窗口形式显示;*代表表中的所有信息(字段)eg:sele * from 订购单表where year(订购日期)=2005联接查询:其于多张表的查询;sele 要查询的字段from 表名1,表名2 where 查询条件and 联接条件;eg:sele 城市,面积from 仓库表,职工表,订购单表where 订购单号="OR99" AND 仓库表.仓库号=职工表.仓库号and 职工表.职工号=订购单表.职工号嵌套查询:结果出自一张表,而条件涉及多张表;sele 要查询的字段from 表名1 where 公共字段in/not in;(sele 公共字段from 表名2 where 查询条件)eg:sele 城市from 仓库表where 仓库号not in;(sele 仓库号from 职工表where 工资>1500)特殊运算符查询:1、BWTWEEN AND:在两者之间;相当于>=<=eg:sele * from 仓库表where 面积between 400 and 5002、like:字符串匹配查询;%:任意的多个字符_:任意的一个字符eg:sele * from 供应商表where 供应商名like "%厂"eg:sele * from 供应商表where 供应商名like "_通电子厂"排序查询:对查询出来的结果进行排顺序;ORDER BY 排序字段升/降序;ORDER BY 排序字段1 升/降序,排序字段2 升降序;eg:sele * from 仓库表where 面积>300 order by 面积desc,仓库号asc计算查询:sum:求和;max:求最大值;min:求最小值;AVG:求平均值;COUNT:求个数;eg:select sum(面积) from 仓库表;计算与分组查询:(命题中出现每个,各个时)GROUP BY 分组字段having 分组条件eg:sele 仓库号,avg(工资) as 平均工资from 职工表;group by 仓库号having count(职工号)>=2利用空值查询:IS NULL:是空值;(不能确定,无法确定;)IS NOT NULL:不是空值;(已经确定)别名与自联接查询:别名的指定方法:表名as 别名表名别名eg:sele 城市,工资等级from 仓库表as A,职工表AS B where 工资>1200 and A.仓库号=B.仓库号自联接查询:表本身建立的查询;内外层互相关联嵌套查询:外层的别名为:out;内层的别名为:INNER1;量词和谓词查询:量词:any som all 其中ANY和SOME是同意词;谓词:exists:IN;NOT EXISTS:NOT IN;超联接查询:全联接:full join on 不管满足与否都显示在查询结果中;不满足条件的记录用空值表示;左联接:left join on:左边这张表中不满足条件的记录出现在查询的结果中;右联接:right join on右边这张表中不满足条件的记录出现在查询的结果中;内联接:inner join on:只显示满足条件的记录;集合的并运算:连接两条SQL语句;UNION;SQL语句查询操作功能:插入:(1)INSERT INTO 表名values (字段值)向表的全部字段插入记录(2)INSERT INTO 表名(字段名) values(字段值)向表的部分字段插入记录(3)INSERT INTO 表名from array 数组名;插入记来来自于数组;(4)INSERT INTO 表名(字段名) values(数组名):插入部分记录来自于数组;更新:修改表中的记录;update 表名set 表达式where 条件;删除:逻辑删除表中的记录;delete from 表名delete from 表名where 条件;数据的定义功能:快速建表功能;定义数据库:CREAT DATABASET 库名定义表:CREAT TABLE 表名(字段名类型(宽度))定义索引:CREAT TABLE 表名(字段名类型(宽度)索引的英文名称)定义永久性联系:CREAT TABLE 表名(字段名类型(宽度),foreign key 公共字段tag 公共字段reference 有主索引的表名)定义有效性规则:CREAT TABLE 表名(字段名类型(宽度) check 逻辑表达式error"字符表达式" default 默认值)删除表:彻底的从磁盘上移走;drop table 表名修改表:ALTER TABLE 表名....修改表:ALTER TABLE增加字段:ALTER TABLE 表名add 新字段名类型(宽度)删除字段:ALTER TABLE 表名DROP 字段名修改字段:ALTER TABLE 表名ALTER 字段名新类型(新宽度)重命名字段:ALTER TABLE 表名rename column 旧字段to 新字段;修改字段的有效性规则:alter table 表名alter 字段名set check 逻辑表达式error 字符表达式修改字段的默认值:alter table 表名alter 字段名set default 默认值视图:定制的虚拟表,它必须依赖于数据库.不能独立存在;定义视图:CREAT VIEW 视图名as;sele --- from ----删除视图:drop view 视图名查询名词(.qpr的文件)建立一个扩展名QPR的文件;建立查询:1、文件菜单--新建--查询2、CREAT QUERY;视图:即有表的特点又有查询的功能;(依赖于数据据库)建立视图:文件菜单--新建--视图;CREAT VIEW视图组成部分:更新条件:可以更改视图中的数据;更新的方法:选中更新条件--在更新条件的对话框中选中要更改的字段--选中发送SQL更新即可;查询和视图的区别:1、查询可以根据任意表建立,但是视图必段依赖于数据库;2、查询无更新条件,而视图有更新条件;3、查询有查询去向,而视图无查询去向;表单:是VFP用于建立所有应用程序界面的主要工具;对象:客观存在任何实体;eg:学生电脑手机表单属性:用于描述对象的状态;eg:姓名身高性别eg:形状颜色方法:用于描述对象的行为;eg:考试是否团员;eg:铃声钟声;对象的属性和方法用户可以添加;类:同一类对象的相似性质的描述;父类:子类:继承:从一般到特殊的进化过程;控件:以图形化的方式显示内容;控件类控件:可直接操作;容器类控件:可以包含控件;表单:(.scx)建立:CREAT FORM;保存表单:CTRL+S;运行表单:CTRL+E;表单的属性:caption:改变表单的标题名称;用户可浏览的;name:改变表单的标题的内部名称;在程序中调时引用backcolor:表单的背景色;picture:表单的背景图片;控件:标签(label1):主要用于输入或显示内容;caption:标题;fontsize:字号;fontname:字体;forecolor:字色;backstyle:是否有背景命令按钮(command1):执行任务;颜色由红绿蓝构成(rgb)它的最大值为255,eg:rgb(255,255,255)白色;eg:rgb(0,0,0)黑色;表单的控件:命令按钮(command1):执行任务;caption:标题名称;default:响应回车键;cancel:是否响应ESC;ENABLED:是否可用;visible:是否隐藏真:显示,假:隐藏;文本框(text):输入或显示信息在文本框中;value:当前值;inputmask:如何在文本框中输入数据;passwordchar:如何在文本框中显示数据;注:关闭表单:THISFORM.RELEASERELEASE THISFORM事件:由系统预先定义好的一种动作,由用户或系统本身引发; 系统事件:load:表单运行之前引发的事件;init:表单运行之时引发的事件;destroy:表单释放时引发的事件;unload:表单释放时最后一个引发的事件;用户事件:click:单击;rightclick:右击;dblclick:双击;关闭表单:THISFORM.RELEASERELEASE THISFORM对象设置属性thisform.对象名称.属性名=值eg:thisform.text1.backcolor=rgb(255,255,255)设置数据源单击“显示”—“数据环境”—“添加”字段的添加表格的添加消息框:messagebox("字符表达式",数值)eg:messagebox("你好",4方法:release:释放表单;visible:隐藏表单;.f.为隐藏;编辑框(edit1):输入或显示数据;value:当前值;readonly:是否为只读;scrollbars:是否具有滚动条;复选框(check1):是于标记一个两值状态;caption:用于改变旁边的文字;VALUE:当前状态;0 未选中,1选中;2不确定;据供用户选择(包含输入)rowsource:指定组合框的数据来源;rowsourcetype:指定组合框数据来源的类型;VALUE:当前值;表单的控件:列表框(list):提供条目供用户选择;rowsource:数据源;rowsourcetype:数据源的类型;value:列表框的当前值;表格(grid1):显示数据信息;recordsource:表格的数据来源;recordsourcetype:表格的数据来源类型;微调控件(spinner1):对数据进行小量的调整;spinnerheightvalue:箭头上移的最大值;spinnerlowvalue:箭头下移的最小值;keyboardheighvalue:键盘输入的最大值;keyboardlowvalue:键盘输入的最小值;increment:微调量value:当前值;计时器(timer1):计时间;interval:每隔多少毫秒显示一次时间;enabled:是否可用容器类控件:在使用前必须右键单击--编辑方可使用命令按钮组成(commandgroup):执行任务;buttoncount:命令按钮的个数;CAPTION:标题;选项按钮组(optiongroup):用于提供多个按钮供用户选择;选择不同的按钮将执行不同的功能;buttoncount:个数;caption:标题;value:状态;页框(pageframe1):提供多个页供用户选择;pagecount:页框的个数;caption:页框的页名;通过数据环境添加表右击表单--数据环境--添加表--确定;通过给页框添加表格来显示表;改变每个页框中的表格属性;利用向导可创建表单向文件:系统提出问题,用户回答问题最后就枸成了一个独立的文件;第七章菜单条形菜单(左键)弹出式菜单(右键)菜单:每一个菜单项可以完成一项特定的功能;创建菜单:CREAT MENU菜单的设计器的组成:菜单名称:菜单名;结果:命令:由一条语句构成;过程:由多条语句构成;子菜单:基于菜单名称下的子菜单;填充名称:生成:由扩展名为mnx生成到mpr文件;(菜单--生成---运行)即可;退出菜单1\set sysmenu to default(命令)2\set sysmenu nosaveset sysmenu to default(过程)如何为菜单设置热键或访问键:在菜单名称后输入"(\<字母)"即可;如何设置快捷键:在菜单名称后--选项--选中选项--设置快捷键即可;如何设置分隔符:在菜单名称处输入"\-"即可如何将用户菜单添加到系统菜单中:创建菜单--设计菜单--显示菜单下的常规选项--追加--确定--生成菜单--运行菜单; 菜单如何将菜单添加到表单中作为顶层:1、新建表单--保存表单;2、新建菜单--常规选项--顶层表单--生成表单;3、将表单的SHOWWINDOWS属性改为2;4、在表单的LOAD/INIT事件中输入DO 菜单名.mpr with this;5、运行表单;快捷菜单:如何将快捷菜单添加到表单中:1、设计表单--保存表单;2、设计菜单--生成菜单;3、将表单的RIGHTCLICK事件中输入:DO 菜单名.mpr4、运行表单;第八章报表(.frx)报表:主要用于打印输出;建立报表文件:CREATE REPORT报表的组成:报表设计器:提供窗口供用户设计内容;默认组成部分:页标头:标题;细节:主要内容;页注脚:页面的最底端显示内容;页码,日期等;标签:文本说明;域控件:用于显示一些特殊的表达式函数等;标题:大标题总结:紧接着细节带区后显示一般用于数据进行总计;数据源:数据来源;预览报表:report form 报表文件名previewole控件:即插入图片;报表向导:报表向导和一对多报表向导:根据系统提出的问题用户回答最终就可构成一个完整的文件;。
《Visual FoxPro程序设计》小结复习一、Visual FoxPro基础知识1、基本概念数据、信息、数据处理、数据库的含义;数据库管理系统(DBMS)的含义;数据模型的种类(层次模型、网状模型、关系模型);关系数据库、数据表、记录、字段;表间关联关系的类型(一对一关系、一对多关系);关系完整性(域完整性、实体完整性、参照完整性);三种关系运算(选择、投影、连接);2、数据描述与基本操作(1)常用数据类型字符型(C)、数字型(N)、日期型(D)、逻辑型(L)、备注型(M)(2)运算对象、运算符与表达式常量、内存变量、字段变量等运算对象的命名、定义和使用;内存变量的赋值操作命令(=、STORE);数值运算符(+、-、*、/、%、**或^等)、字符运算符(+、-)、日期和时间运算符(+、-)、关系运算符(>、<、>=、<=、=、==、$、<>或#或!=)、逻辑运算符(AND、OR、NOT或!)的使用;(3)常用函数常用的数值函数(INT)、字符函数(ALLTRIM、LEFT、RIGHT、SUBSTR、AT、LEN、等)、日期函数(DATE、YEAR、等)、类型转换函数(UPPER、LOWER、DTOC、CTOD、STR、V AL等)、表检测函数(FOUND、BOF、EOF、RECNO等)的使用;(4)数据库与表的基本构成数据库与表的基本概念及其构成关系:数据库/表/记录/字段;数据库表与自由表的区别;对表记录或字段操作的命令的一般格式及其中的子句(范围、FOR、FIELDS)的功能和作用。
二、表的建立与操作1、表结构的建立与操作表结构(.DBF)的建立(CREATE…)、修改(MODIFY STRUCTURE)、显示(DISPLAY STRUCTURE)、浏览(borwose)等操作;2、表内容的编辑、查找操作表打开(USE…)与关闭(USE);表记录操作的常用命令,包括记录指针操作(SKIP、GO)、添加记录(APPEND)、显示记录(LIST、DISPLAY)、复制记录(COPY)、删除记录(DELETE、RECALL、ZAP)、替换记录字段的值(REPLACE)、查找记录(LOCA TE、CONTINUE、SEEK、FIND)、统计记录(SUM、COUNT、A VERAGE、TOTAL)。
1.数据模型不仅表示反映事物本身的数据,而且表示事物与事物之间的联系。
2.用二维表的形式来表示实体之间联系的数据模型叫做关系数据模型。
3.二维表中的列称为关系的属性;二维表中的行称为关系的元组。
4.在关系数据库的基本操作中,从表中取出满足条件元组的操作称为选择,把两个关系中相同属性值的元组联接到一起形成新的二维表的操作称为联接;从表中抽取属性值满足条件列的操作称为投影。
5.自然联接是指去掉重复属性的等值连接。
6.Visual FoxPro不允许在主关键字字段中有重复值或空值。
7.在Visual FoxPro的表之间建立一对多联系是把一方的主关键字字段添加到多方的表中。
8.为了把多对多的联系分解成两个一对多联系所建立的“纽带表”中应包含两个表的主关键字。
9.Visual FoxPro 6.0是关系型微机数据库开发系统,它支持标准的面向过程的程序设计方式,还支持面向对象程序设计方法。
10.数据时存储在某一媒体上能够ishibie1的物理符号,其概念包含两个方面:一是描述事物特性的数据内容,二是存储在某一种媒体上的数据形式。
11.任何一个数据库管理系统都是基于数据模型建立的,数据库管理系统支持的数据模型分3种:层次模型,网状模型,关系模型。
12.查询关系数据库中用户需要的数据时,需要对关系进行一定的关系运算。
关系基本运算有两类:一类是传统的集合运算;另一类是专门的关系运算。
13.如果表中的一个字段不是本表的主关键字或候选关键字,而是另一个表的主关键字,那么这个字段(属性)就称为外部关键字。
14.两个实体间的关系可分为3种类型:一对一(或1︰1)﹑一对多(或1︰n)和多对多(m︰n)。
15.关系数据库管理系统所管理的关系是若干个的二维表。
16.数据库是存储在计算机存储设备上,结构化的相关数据集合,它不仅包括描述事物的数据本身,而且还包括相关事物之间的联系。
17.数据库不仅可以表示事物内部各数据项之间的联系,而且还可以表示事物与事物之间的关系。
新建数据库的方法:1、文件菜单--新建--数据库--新建文件--找到保存位置--输入库名--保存;2、CREATE DATABASE;关闭数据库的方法:close database(当前)打开数据库的方法:1、文件菜单--打开--找到位置--文件类型选择数据库--选择库名--打开;2、open database;modify database(显示数据库设计器)删除数据库的方法:先关闭数据库--DELETE DATABASE 路径+库名;eg:delete data d:\09年四月一班\学校管理建立数据库表:1、文件菜单--新建--表--新建文件--找到保存位置--输入表名--保存;2、CREAT表的操作:自由表和数据库表;1、自由表:不在数据库中的表;2、数据库表:必须存在于数据库中;3、自由表与数据库的区别:1、自由表字段名的宽度最多为10个字符,无主索引,无有效性规则框;2、数据库表字段名的宽度最多为128个字符,有主索引,有有效性规则框;3、自由表与数据库表的转换:(默认目录设置在先)(1)数据库到自由表1、打开数据库--右击表--删除--移去--是;2、REMOVE TABLE 表名(2)自由表到数据库表1、右击数据库设计器--添加--找到表--确定2、ADD TABLE 表名;表的基本操作:1、create;建立表;2、USE 打开表/关闭表;3、浏览表:BROWS/显示--浏览;修改表的结构:打开表设计器窗口(1)打开表后--显示菜单--表设计器;(2)MODIFY STRUCTURE;null:空值(暂时无法确定的值)不等于0空值的设置:在建表时(表设计器窗口-选择要设置空值字段--将NULL按钮选中打上对号--默认值对话框中输入.null.)调整日期的显示格式:将日期的格式设为年月日:set date to ymd将日期的格式设为月日年:set date to mdy设置年份的位数:set century on(4位)set century off(2位)设置日期的分隔符:set mark to "-"或"."或"/"表的记录修改:1、增加记录:显示--追加方式;CTRL+Y;APPEND BLANK/APPEND2、删除记录:(逻辑删除和物理删除)1、逻辑删除:即给记录添加删除标记;(可以恢复)(1)在记录号处单击使之颜色变为黑色;(2)DELETE ALL(全部逻辑删除);RECALL ALL(全部恢复);(3)DELETE FOR 表达式eg:DELETE FOR 仓库号="WH8"(字符型数据所以要加定界符,字符型的定界符"" '' [])2、物理删除:彻底的删除;(不能恢复)(1)PACK:删除带有删除标记的记录;(2)ZAP:清空表中的记录;插入记录:(1)INSERT :在当前记录之后插入;(2)INSERT BEFORE:在当前记录之前插入;修改记录:1、REPLACE 要修改的字段with 表达式ALL;eg:repla 面积with 面积+100 all2、REPLACE 要修改的字段with 表达式FOR 条件;eg:repla 数学with 数学-10 for 姓名="CC"3、REPLA 要替换的字段with 值for 条件eg:repla 姓名with "优秀生" for 总分>150一、数据的完整性:确保数据正确的特性;主索引(primary key)侯选索引(candidate)唯一索引(unique)用命令建立索引(不能主索引)INDEX ON 索引表达式tag 索引名索引的英文名称eg:index on 姓名tag 姓名candidate升序ascending (asc) 降序descending (desc)eg:index on 姓名tag 姓名desc candidate(以姓名降序建立侯选索引);用命令删除索引:DELETE TAG ALL域完整性:控制用户输入数据的范围(有效性规则)规则框:用于输入逻辑表达式;eg:性别="男" or 性别="女"信息框:用于显示出错信息;字节符表达式;eg:"输入的信息不对"默认值:与字段类型相同;eg:"女"参照完整性:通过修改一张表,将相应的修改结果反映到另一张上;父表:建立主索引的表;子表:建立普通索引的表;父子关系;编辑参照完整性的步骤:1、打开同一个数据库有联接的两张表观察;2、为父表建立主索引,为子表建立普通过引3、通过索引建立永久性的联系;4、清理数据库pack database 目的是物理删除带有删除标记的记录;5、双击连接线--编辑参照完整性;编辑参照完整性的步骤:1、打开同一个数据库有联接的两张表观察;2、为父表建立主索引,为子表建立普通过引3、通过索引建立永久性的联系;4、清理数据库pack database 目的是物理删除带有删除标记的记录;5、双击连接线--编辑参照完整性;规则:更新规则:更改;级联:改父表时子表随之修改;限制:只能在父表中改子表中没有的相关记录;忽略:不做限制;删除规则:(逻辑删除)级联:删除父表中的记录时,子表中的相关记录随之删除;限制:只能在父表中删除子表中没有的相关记录;忽略:不做限制;插入规则:限制:只能在子表中插入父表中有的相关记录;忽略:不做限制;补充第三章物理排序:1、打开要被排的表;2、sort to 新表名on 排序字段名升降序;3、打开表4、浏览表;eg:use 仓库表sort to aa on 面积ascendinguse aabrows临时联系:记录指针的同步移动;工作区:当前工作的区域;在VFP中共有32767个工作区,最大工作区号:32767 最小工作区号1 空闲工区号0命令格式(例如)use 仓库表in 1 order 仓库号use 职工表in 2 order 仓库号set relation to 仓库号into 职工表项目文件(pjx):包含了VFP中的所有文件,并且提供管理的平台;建立:CREATE PROJECT;指针的移动:goto n:指针移到第N条;skip :向下移动;SKIP -1:向上移动;locate for 表达式:光标条件移动;go top:表头;go bottom:表尾;注:_screen.fontsize=15将主窗口中字号调至15号;第二章第一节:常量、变量、表达式;1、常量:一个固定不变的量;数值型常量:0-9个数字加正负符号加小数点构成;2、y货币型常量:$ ¥eg:$588.003、字符型常量:必须定界符("" [] '')eg "abc" "" " " ['"dkdkkd"']4、日期型常量:定界符{^年月日}严格的日期格式:年月日 4传统的日期格式:月日年 2set date to ymdset date to mdyset cent onset cent offset mark to "-"5、日期时间常量:定界符号{^年-月-日,时-分-秒}6、逻辑型常量:.t.和.f.定界符是..变量:其值可以不断发生改变的量;内存变量:简单的变量;eg:a=10 a为变量名,=赋值符号,10为值;意思是将10赋给变量a;STORE 值to 变量名列表eg:store 100 to a,b,c,d字段变量:表中的字段名;注VFP中的输出语句是?:在不同行输出;??:在同行输出;显示内存变量:LIST MEMORY LIKE A清除内存变量:clear memory/release all;数组:内存开辟的一片连续的存储区域;定义数组:DIMENSION 数组名(元素)DECLARE 数组名(元素)eg:dimension aa(5) 一维数组;eg:dimension bb(2,3)二级数组;赋值数组:数组名(元素)=值eg:aa(1)=100访问数组:?数组名(元素)eg:aa(1)数组的使用:数组中的记录复制表中:1、定义数组;2、赋值数组;3、打开表;4、追加空记录;5、GATHER FROM 数组名;6、浏览表;eg:declare aa(3)aa(1)="WH6"aa(2)="汉阴"aa(3)=270use 仓库表append blankgather from aabrows表中的数据复制到数组中:1、打开表2、SCATTER TO 数组名;3、访问数组;eg:use 职工表scatter to aa?aa(1)表达式:由常量变量函数通过特定的运算符连接起来的式子;数值型表达式:()**^ */% + -字符型表达式:+ -+:连接两个字符串;-:连接两上字符串,并且将前字符串的尾总空格移到新串的尾部;表达式:数值表达式:字符表达式:日期表达式:日期型;注:日期与日期不能相加;天数不能减日期;日期时间不能加日期时间;关系表达式:> >= < <= = == (!=<>#) $ 返回的结果为逻辑型;设置字符串的比较类型:工具菜单--选项--数据--排序依据--拼音;SET COLLATE TO "pinyin"拼音状态下:后面字母大于前边的字母,并且大写字母大于小写字母;eg:"张三">"李四" .t. "A">"a" .t.机内码状态(machine):后面字母大于前边的字母,并且小写字母大于大写字母;eg:"A">"a" .f.笔画状态(stoke):笔画多的大于笔画少的;逻辑表达式: not and ornot:非;相反值;and:与;前后两个表达式都为真时结果为真,否则为假;OR:或;只要有一个为真,结果都为真;优先级:NOT AND OR所有表达式综合在一起的优先级:()数值字符日期关系逻辑函数:数据运算或转换功能;abs:绝对值;sqrt:求平方根;PI():3.14ROUND():四舍五入;参数2如果为正数表对小数部分取,如果为负数表对整数部分取;mod()取余%字符函数:自变量一般为字符型;LEN()宽度;SPACE():生成空格的函数;LTRIM():取左边空格;TRIM():取右边空格;ALLTRIM():取前后空格;left():从左边取;RIGHT():从右边取;substr():从中间取;字符函数:自变量一般为字符型;LEN()宽度;SPACE():生成空格的函数;LTRIM():取左边空格;TRIM():取右边空格;ALLTRIM():取前后空格;left():从左边取;RIGHT():从右边取;substr():从中间取;occurs():子串出现次数;at():位置;act():位置;(不区分大小写)STUFF():子串替换函数;(由字符表达式2替换字符表达式1中由起始位置指定宽度的字符)chrtran():字符替换函数;LIKE()字符串匹配函数;*:任意的多个字符;?:任意的一个字符;日期时间函数:date()time() 字符型;datetime()STR()数值转换为字符;VAL()字符转换数值;CTOD() c-dDTOc() d-cttoc() t-cctot() c-t&:宏替换函数,替换的是字符型变量内的值;测试函数:ISNULL()空值;BOF()表头表的第一条记录的上一条记录BOF为真;EOF()表尾表的最后一条记录的下一条记录EOF为真程序:能够完成一定任务多条有序命令集合;建立文件:MODIFY COMMAND程序文件扩展名.prg运行程序:DO 程序文件名.prg;CTRL+E;保存程序:CTRL+S;程序分为三种结构:顺序结构:从程序的第一条开始执行到程序的最后一条;输入语句:INPUT "提示符" to 变量名(任意)ACCEPT "提示符" to 变量名(字符)set talk off:屏蔽所有信息;set talk on:打开所有信息;选择结构:根据条件进行选择满足条件的语句执行;if 条件if 条件语句语句else endif语句endif(竖着看)编辑程序:1、通过键盘输入学生的三门成绩,用IF语句判断三门之和是否大于285分如果是输入优秀,如果语数之和大于200分显示语数好,如果英语>=90显示英语好,否则显示仍努力!2、已知表(姓名语文数学英语学分)表中有记录,根据表中的语数英计算学分,如果语文>=60 学分2分,数学>=60 学分为3分,英语>=60学分为4分;3、已知表(姓名三好生l,优秀干部l,少数民族l 学分)计算学分如果学生是三好生学分为5分,如果是优秀干部学分为10分,少数民族学分为15分.最后算总学分;4、用DO语句计算100以内的偶数和奇数之和第四章关系数据库标准语言SQL语句1、数据查询功能:简单查询:对一张表的查询;sele 要查询的字段from 表名where 条件查询结果以浏览窗口形式显示;*代表表中的所有信息(字段)eg:sele * from 订购单表where year(订购日期)=2005联接查询:其于多张表的查询;sele 要查询的字段from 表名1,表名2 where 查询条件and 联接条件;eg:sele 城市,面积from 仓库表,职工表,订购单表where 订购单号="OR99" AND 仓库表.仓库号=职工表.仓库号and 职工表.职工号=订购单表.职工号嵌套查询:结果出自一张表,而条件涉及多张表;sele 要查询的字段from 表名1 where 公共字段in/not in;(sele 公共字段from 表名2 where 查询条件)eg:sele 城市from 仓库表where 仓库号not in;(sele 仓库号from 职工表where 工资>1500)特殊运算符查询:1、BWTWEEN AND:在两者之间;相当于>=<=eg:sele * from 仓库表where 面积between 400 and 5002、like:字符串匹配查询;%:任意的多个字符_:任意的一个字符eg:sele * from 供应商表where 供应商名like "%厂"eg:sele * from 供应商表where 供应商名like "_通电子厂"排序查询:对查询出来的结果进行排顺序;ORDER BY 排序字段升/降序;ORDER BY 排序字段1 升/降序,排序字段2 升降序;eg:sele * from 仓库表where 面积>300 order by 面积desc,仓库号asc计算查询:sum:求和;max:求最大值;min:求最小值;AVG:求平均值;COUNT:求个数;eg:select sum(面积) from 仓库表;计算与分组查询:(命题中出现每个,各个时)GROUP BY 分组字段having 分组条件eg:sele 仓库号,avg(工资) as 平均工资from 职工表;group by 仓库号having count(职工号)>=2利用空值查询:IS NULL:是空值;(不能确定,无法确定;)IS NOT NULL:不是空值;(已经确定)别名与自联接查询:别名的指定方法:表名as 别名表名别名eg:sele 城市,工资等级from 仓库表as A,职工表AS B where 工资>1200 and A.仓库号=B.仓库号自联接查询:表本身建立的查询;内外层互相关联嵌套查询:外层的别名为:out;内层的别名为:INNER1;量词和谓词查询:量词:any som all 其中ANY和SOME是同意词;谓词:exists:IN;NOT EXISTS:NOT IN;超联接查询:全联接:full join on 不管满足与否都显示在查询结果中;不满足条件的记录用空值表示;左联接:left join on:左边这张表中不满足条件的记录出现在查询的结果中;右联接:right join on右边这张表中不满足条件的记录出现在查询的结果中;内联接:inner join on:只显示满足条件的记录;集合的并运算:连接两条SQL语句;UNION;SQL语句查询操作功能:插入:(1)INSERT INTO 表名values (字段值)向表的全部字段插入记录(2)INSERT INTO 表名(字段名) values(字段值)向表的部分字段插入记录(3)INSERT INTO 表名from array 数组名;插入记来来自于数组;(4)INSERT INTO 表名(字段名) values(数组名):插入部分记录来自于数组;更新:修改表中的记录;update 表名set 表达式where 条件;删除:逻辑删除表中的记录;delete from 表名delete from 表名where 条件;数据的定义功能:快速建表功能;定义数据库:CREAT DATABASET 库名定义表:CREAT TABLE 表名(字段名类型(宽度))定义索引:CREAT TABLE 表名(字段名类型(宽度)索引的英文名称)定义永久性联系:CREAT TABLE 表名(字段名类型(宽度),foreign key 公共字段tag 公共字段reference 有主索引的表名)定义有效性规则:CREAT TABLE 表名(字段名类型(宽度) check 逻辑表达式error"字符表达式" default 默认值)删除表:彻底的从磁盘上移走;drop table 表名修改表:ALTER TABLE 表名....修改表:ALTER TABLE增加字段:ALTER TABLE 表名add 新字段名类型(宽度)删除字段:ALTER TABLE 表名DROP 字段名修改字段:ALTER TABLE 表名ALTER 字段名新类型(新宽度)重命名字段:ALTER TABLE 表名rename column 旧字段to 新字段;修改字段的有效性规则:alter table 表名alter 字段名set check 逻辑表达式error 字符表达式修改字段的默认值:alter table 表名alter 字段名set default 默认值视图:定制的虚拟表,它必须依赖于数据库.不能独立存在;定义视图:CREAT VIEW 视图名as;sele --- from ----删除视图:drop view 视图名查询名词(.qpr的文件)建立一个扩展名QPR的文件;建立查询:1、文件菜单--新建--查询2、CREAT QUERY;视图:即有表的特点又有查询的功能;(依赖于数据据库)建立视图:文件菜单--新建--视图;CREAT VIEW视图组成部分:更新条件:可以更改视图中的数据;更新的方法:选中更新条件--在更新条件的对话框中选中要更改的字段--选中发送SQL更新即可;查询和视图的区别:1、查询可以根据任意表建立,但是视图必段依赖于数据库;2、查询无更新条件,而视图有更新条件;3、查询有查询去向,而视图无查询去向;表单:是VFP用于建立所有应用程序界面的主要工具;对象:客观存在任何实体;eg:学生电脑手机表单属性:用于描述对象的状态;eg:姓名身高性别eg:形状颜色方法:用于描述对象的行为;eg:考试是否团员;eg:铃声钟声;对象的属性和方法用户可以添加;类:同一类对象的相似性质的描述;父类:子类:继承:从一般到特殊的进化过程;控件:以图形化的方式显示内容;控件类控件:可直接操作;容器类控件:可以包含控件;表单:(.scx)建立:CREAT FORM;保存表单:CTRL+S;运行表单:CTRL+E;表单的属性:caption:改变表单的标题名称;用户可浏览的;name:改变表单的标题的内部名称;在程序中调时引用backcolor:表单的背景色;picture:表单的背景图片;控件:标签(label1):主要用于输入或显示内容;caption:标题;fontsize:字号;fontname:字体;forecolor:字色;backstyle:是否有背景命令按钮(command1):执行任务;颜色由红绿蓝构成(rgb)它的最大值为255,eg:rgb(255,255,255)白色;eg:rgb(0,0,0)黑色;表单的控件:命令按钮(command1):执行任务;caption:标题名称;default:响应回车键;cancel:是否响应ESC;ENABLED:是否可用;visible:是否隐藏真:显示,假:隐藏;文本框(text):输入或显示信息在文本框中;value:当前值;inputmask:如何在文本框中输入数据;passwordchar:如何在文本框中显示数据;注:关闭表单:THISFORM.RELEASERELEASE THISFORM事件:由系统预先定义好的一种动作,由用户或系统本身引发; 系统事件:load:表单运行之前引发的事件;init:表单运行之时引发的事件;destroy:表单释放时引发的事件;unload:表单释放时最后一个引发的事件;用户事件:click:单击;rightclick:右击;dblclick:双击;关闭表单:THISFORM.RELEASERELEASE THISFORM对象设置属性thisform.对象名称.属性名=值eg:thisform.text1.backcolor=rgb(255,255,255)设置数据源单击“显示”—“数据环境”—“添加”字段的添加表格的添加消息框:messagebox("字符表达式",数值)eg:messagebox("你好",4方法:release:释放表单;visible:隐藏表单;.f.为隐藏;编辑框(edit1):输入或显示数据;value:当前值;readonly:是否为只读;scrollbars:是否具有滚动条;复选框(check1):是于标记一个两值状态;caption:用于改变旁边的文字;VALUE:当前状态;0 未选中,1选中;2不确定;据供用户选择(包含输入)rowsource:指定组合框的数据来源;rowsourcetype:指定组合框数据来源的类型;VALUE:当前值;表单的控件:列表框(list):提供条目供用户选择;rowsource:数据源;rowsourcetype:数据源的类型;value:列表框的当前值;表格(grid1):显示数据信息;recordsource:表格的数据来源;recordsourcetype:表格的数据来源类型;微调控件(spinner1):对数据进行小量的调整;spinnerheightvalue:箭头上移的最大值;spinnerlowvalue:箭头下移的最小值;keyboardheighvalue:键盘输入的最大值;keyboardlowvalue:键盘输入的最小值;increment:微调量value:当前值;计时器(timer1):计时间;interval:每隔多少毫秒显示一次时间;enabled:是否可用容器类控件:在使用前必须右键单击--编辑方可使用命令按钮组成(commandgroup):执行任务;buttoncount:命令按钮的个数;CAPTION:标题;选项按钮组(optiongroup):用于提供多个按钮供用户选择;选择不同的按钮将执行不同的功能;buttoncount:个数;caption:标题;value:状态;页框(pageframe1):提供多个页供用户选择;pagecount:页框的个数;caption:页框的页名;通过数据环境添加表右击表单--数据环境--添加表--确定;通过给页框添加表格来显示表;改变每个页框中的表格属性;利用向导可创建表单向文件:系统提出问题,用户回答问题最后就枸成了一个独立的文件;第七章菜单条形菜单(左键)弹出式菜单(右键)菜单:每一个菜单项可以完成一项特定的功能;创建菜单:CREAT MENU菜单的设计器的组成:菜单名称:菜单名;结果:命令:由一条语句构成;过程:由多条语句构成;子菜单:基于菜单名称下的子菜单;填充名称:生成:由扩展名为mnx生成到mpr文件;(菜单--生成---运行)即可;退出菜单1\set sysmenu to default(命令)2\set sysmenu nosaveset sysmenu to default(过程)如何为菜单设置热键或访问键:在菜单名称后输入"(\<字母)"即可;如何设置快捷键:在菜单名称后--选项--选中选项--设置快捷键即可;如何设置分隔符:在菜单名称处输入"\-"即可如何将用户菜单添加到系统菜单中:创建菜单--设计菜单--显示菜单下的常规选项--追加--确定--生成菜单--运行菜单; 菜单如何将菜单添加到表单中作为顶层:1、新建表单--保存表单;2、新建菜单--常规选项--顶层表单--生成表单;3、将表单的SHOWWINDOWS属性改为2;4、在表单的LOAD/INIT事件中输入DO 菜单名.mpr with this;5、运行表单;快捷菜单:如何将快捷菜单添加到表单中:1、设计表单--保存表单;2、设计菜单--生成菜单;3、将表单的RIGHTCLICK事件中输入:DO 菜单名.mpr4、运行表单;第八章报表(.frx)报表:主要用于打印输出;建立报表文件:CREATE REPORT报表的组成:报表设计器:提供窗口供用户设计内容;默认组成部分:页标头:标题;细节:主要内容;页注脚:页面的最底端显示内容;页码,日期等;标签:文本说明;域控件:用于显示一些特殊的表达式函数等;标题:大标题总结:紧接着细节带区后显示一般用于数据进行总计;数据源:数据来源;预览报表:report form 报表文件名previewole控件:即插入图片;报表向导:报表向导和一对多报表向导:根据系统提出的问题用户回答最终就可构成一个完整的文件;。