《江苏省计算机等级考试二级VFP资料.pdf》由会员分享,可在线阅读,更多相关《江苏省计算机等级考试二级VFP资料.pdf(84页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、本文由y u s h u a i i s j 贡献d o c 文档可能在WAP 端浏览体验不佳。建议您优先选择T XT,或下载源文件到本机查看。江苏省计算机等级考试二级V F P 复习资料(2 0 1 0 年 1 0 月)于帅江苏省计算机等级考试二级V F P 复习资料计算机的应用领域:科学计算、数据处理(7 0%)、自动控制、辅助设计、人工智能数据处理需求:大量地处理数据(人事、工资、成绩管理、销售管理、图书馆、售票)数据库是计算机系统的一个重要组成部分。数据库技术是信息技术中应用最广泛的技术之一计算机系统包括:硬件和软件;其中软件又包括系统软件和应用软件,系统软件有:O S、DBM S.编
2、译数据处理是对各种类型的数据进行收集、存储、分类、计算、加工、检索和传输的过程。数据处理数据处理的中心问题是数据管理数据管理数据管理是对数据的分类、组织、编码、存储、检索和维护。计算机数据管理技术发展的三个阶段-人工管理阶段、文件系统阶段、数据库系统阶段数据库系统(Da t a Ba s eS y s t e m)数 据 库 系 统-组 成:数据库(DB)、数据库管理系统(DBM S)、操作系统、应用程序、计 算 机 硬 件 以 及 数 据 管 理 员(DBA)-DBS=DB+DBM S+DBA数据库:数据库-以一定的组织形式存放在计算机的存储介质上的相互关联的数据的集合。-特 点:按一定的数
3、据模型组织,具有较小的冗余度,较高的数据独立性和扩展性,安全、可靠、保密性好数据库的组成:数据+元数据数据库按数据模型可分为:-层 次、网状、关系、面向对象数据库DBM S 是 DBS 的核心:DBM S 对 D B 进行管理(建立、使用和维护)的系统软件,是用户和数据库之间的接口,提供了用户对D B 进行操作的各种命令(D B 的建立、记录的输入、修改、检索、显示、删除、统计等)DB M S 的组成:-模式翻译、应用程序编译、交互式查询、-数据的组织和存取、事务运行和管理、数据库的维护DB A 是管理数据库系统的机构和相关人员,具有最高的数据特权,负责全面管理DB S DB A 的主要职责-
4、规划和定义数据库的结构-定义数据库的安全性和完整性-选择数据库的存储结构和存取路径-监督和控制数据库的使用和运行-改进数据库系统和重组数据库D B 和 DB M S 的关系:在数据库系统中,用户通过DB M S 可以建立和使用DB,使 用 D B 是的关系:目的,而 DB M S 是实现目的的手段和工具数据库系统三级结构三级 结 构-外 部 层(用户看到的)-概 念 层(所有信息的概括)1江苏省计算机等级考试二级V F P 复习资料(2 01 0年 1 0 月)于帅-内部层(如何存储)三级结构间存在两级映射两级映射,保证了数据的物理独立性(2、3)和逻辑独立性(1、2)两级映射信息转化的三个阶
5、段:-现实世界、观念世界、数据世界现实世界信息 世 界 数 据 世 界 I 抽 象 I 数 据 表 示 I 事物及联系实体模型数 据 模 型 I I I事 物 实 体 数 据/、/、/、对象性质对象属性记录字段数据模型:数据模型:是数据库领域定义数据及其操作的一种抽象表示。数据模型的三要素-数据结构(实体及实体联系)-数 据 操 作-数 据 的 约 束 条 件 数 据 模 型 分 类-概 念数据模型:E-R模型-逻辑数据模型:层次模型、网络模型、关系模型、面向对象模型广泛使用的概念模型概念模型是实体-联系模型,简 称E-R模型,三要素:实体、联系、属性概念模型实体实体:-用来对应现实世界的事物
6、,-实体集中的实体借助实体标识符(关键字)来 加 以 区 别 联 系-分 类:1:1 l:m m:n属性 属性:-实体或联系所具有的特征E-R图:E-R模型的图形化表示-实体集一矩形联系一菱形属性一椭圆形关系模型以关系代数理论为基础,是当今广泛使用的数据库关系模型关系模型关系关系:-是以二维表结构来表示实体及其实体间的联系。-一个关系就是一张 二 维 表-例 子:学生表、成绩表、课程表类别、产 品 属 性(字段):一 列Field元 组(记录):一 行R ecord关系模式:-是对关系结构的描述,它包括模式名模式名以及组成该关系的各属性名各属性名,例:成 绩(学模式名各属性名号,课程代号,成绩
7、)关键字(码):唯一标志一行的多列为关键字。关键字超关键字唯一标志一行的多列XH+XIMING+CSR Q候选关键字+无多余的列XH XM+XB2江苏省计算机等级考试二级V F P复习资料(2010年1 0月)于帅主关键字+从候选中选唯一的一个X H外关键字其他表的主关键 字C J表X H关系模型:用二维表表示实体集,通过外部关键字表示实体间联系的数据模型。关系模型关系模型的组成:-关系-关系操作:选择、投影、连接、除-关 系 的 三类完整性:域完整性(列级/元组级)实体完整性参照完整性用户定义的完整性 关系是一种规范化了的二维表关系的性质:不规范的关系模式存在的缺点:-数据冗余度大,插入异常
8、,删除异常-所以设计关系时应尽量将互相依赖密切的属性构成单独的关系模式解决办法:-基于关系代数的关系规范化理论,-关系规范化的过程是通过关系中属性和关系的模式分解 模式分解来实现的。模式分解关系规范化的条件可以分为几级,每级称为一个范式范式(N o r m a l F o r m)范 式I N F每个属性不可分解2 N F完全函数依赖于候选关键字3 N F不传递依赖于候选关键字(实际关系模型中要满足3 N F)传统的集合运算集合运算,要求两个相同的关系模式集合运算-并、交、差 专门的关系运 算 关 系 运 算-选择原关系的子集,水平分解-投影抽取原关系的部分属性形成的新的关系,垂直分解-联接根
9、据给定的条件将两个关系拼成一个新的关系面向对象模型按如下方式组织面向对象模型事物一一对象一一对象标识对象=状态+行为具有相同属性和方法的对象集合一一类 对象一一实例 类层次 类的继承 父类一一子类一一子类类的复合属性的定义域可以为类对象是被封装的,状态和行为外部不可见,外部只能通过显式定义的消息传地对对象进行操作 常见的关系数据库:I B M DB 2、O R A C A L、I N F O M I X S Y B A S E S Q L-S E R V E R等 微机数据库管理系统:V is u a l F o x p r o、A c c e s s数据库管理系统的发展趋向:分布式、网络化、
10、面向对象、数据仓库V F P的发展:3江苏省计算机等级考试二级V F P 复 习 资 料(2010年 1 0 月)于帅70 年代后期微机出现 1981d Base一d Baselld BaselVFoxb aseFoxpro(d os)Foxpro(W ind ows)VisualFoxpro V F P 的特点最突出的特点:O O P 功 能(面向对象编程)集成环境:集成环境:菜 单(主 菜 单(动态)+快捷菜单)、工 具 栏 状态 栏 主 窗 口 命 令 窗 口(V F P 的两种操作方式鼠标+命令)通过命令窗 口 输 入(命 令 方 式)通 过 命 令 窗 口 输 入(命 令 方 式)m
11、yform=CreateOb ject(form)myform.show myform.W id th=400myform.Height=300 myform.AutoCenter=.t.myform.BackColor=R GB(0,0,255)myform.Caption=我是表单 我是表单我是表单程序方式)编写包含多条命令的程序(程序方式)程序中使用的命令称为语句V F P 命令主要书写规则:*V F P 命令不区分大小写:COPY FILE=copy file 命令动词和短语可以 可以只书 写 前 4 个字母:create=crea clear=clea可 以 V F P 命令必须以动
12、词开头,短语次序不限:d elete file Filename 一个命令行只能写一条命令V F P 命令执行命令:Enter键;删除当前输入的命令:E s c 键。一条长命令分为多行输入(在前面几行)的结尾处输入 分 号;(最后一行除外)重复执行某条命令,再次按Enter键 若要重复执行已输入的多条命令,执行快捷菜单中“运行所选区域运行所选区域”命令 运行所选区域 几个常用命令*本行是注释&此后是 注 释?换 行 显 示??接着上次的内容显示CL E A R 清除主窗口信息D I R 显示文件MD创 建 目 录(m a k e d i r e c t o r y)RD删 除 目 录 C D改
13、变 目 录 CO P Y F I L E 复制文件R E N A M E F I L E 重 命 名 D E L E T E F I L E 删除文 件 R U N 运 行 应 用 程 序 Q U I T 退 出 V F P 系 统 配 置 V F P 操作环境工具一一选 项-例:设 置 文 件 的 位 置 时 间 格 式 千 位 年 份 S E T 命令-可 以 进 行 临 时 设 置(当前有效,重新 启 动 V F P 将不起作用)4江苏省计算机等级考试二级V F P 复习资料(2 0 1 0 年 1 0 月)-设置默认路径s e t d e f a u l t t o d:h u a n
14、 g 设置日期显示四位年份s e tc e n t u r y o n于帅V F P 文 件 类 型 与某一种类型的文件相关的磁盘文件类型可能有多个 例如:项目类:p j x (项目)p j t (项目备注)报表类:f r x(报表)f r t (报表备注)创建文件:-菜 单/工 具 栏/命 令-工 具(设计器、向导、生成器)比较重要的文件类型:P RG (程序)F X P (编译后的程序)项目管理器:V F P 的管理中心项目管理器 项目:管理文件的文件(保存在磁盘),说明和某一个任务相关的数据、对象、文 档 等 项 目 管 理 器-组织 工 具-选项卡分类、层 次-定制项目管理器项目管理器
15、的操作命令按钮是“动态”的,随着当前选择的操作对象或类型而有所不同*新建:通过项目管理器项目管理器新建的文件或对象被项目所管理(在项目管理器窗口中显项目管理 器 示);利用菜单命令菜单命令“新建”“文件”或“常 用 常用”工具栏 上 的“新建”菜单命令常用按钮或在命令窗口命令窗口中利用命令创建的某种类型的文件或对象,不会显示在命令窗口项目管理器窗口中,即不被项目所管理。*移去:被移去项的相关信息仍然保留在项目文件中,但已做了删除标记。如果需要彻底删除相关信息,则需要执行菜单命令“项目”“清理项目”。快捷菜单命令:-包含/排除:排 除(该项前用带斜线的圆圈标注),包含的项在运 行 时 只 读-设
16、置主文件:项目中只能有一个主文件,显示时该项用粗体表示系统将第一个创建的程序、表单、查询或菜单作为默 认 为 主 文 件-重 命名:不允许对已打开的文件重命名。-编辑说 明-项目信息 项 目 间 共 享 文 件-项目中可以添加任何一种类型的文件-一个项目可以和多个其他文件共享文件 共享方法:若要在项目间共享文件,首先打开要共享文件的两个项目,在包含该 项目的“项目管理器”中选择该文件,拖动该文件到另一个项目容器 中即可。数据类型适应现实世界的各种各样的数据类型-用来表示数字的数值型、用来表示日期的等、用来表示姓名等信息的字符型 什么是数据类型?哪两个方面的含义?-数据类型:数据对象的取值集合,
17、以及对它可施行的运算的集合怎样指定数据类型-字段一一在创建时提前规定5江苏省计算机等级考试二级VFP复 习 资 料(2010年1 0月)于帅举例:c j数 值 型 宽 度3位,没有小数部分-变量一一由其中保存的值来确定x=100数 值 型100 V F P的基本数据类型只适用于表字段的数据类型-*只适用于表的字段哪些类型在内存中占用的字节固定?-字 符 型(最多有2 5 4个字符)、数值型、浮点型的在内存中占用的字节不固定,其它类型占用固定字节(货币、日期、日期时间8字节)数据容器:用来保存数据的常量、变量、数组、记录和对象数据容器V F P中的命名规则开头:字母、汉字、下划线包含:字母、汉字
18、、下划线、数字长度限制:自由表的字段名、表的索引标识名W 1 0,其 他 1 2 8个字符哪些字符不能使用:避免使用保留字(use、create、do等)举例:下列名称为什么合法?cVar nVar2 x_2 sum of score nSum score _aer_gz 1 下 歹(J名称为什么不合法?2x 2_x num-of-xs nsum&score _aver#gz use 常量:常量:在所有操作过程中保持不变不同类型常量的特点?-不同类型的常量有不同的定界符-不同类型的常量允许进行不同的运算常 量 类 型-数 值 型:数字、小数点、正负号如:3.12E28 -货币型:$200-字符
19、型:口 -逻 辑 型.f.t.y.n.-日期型 /-:空日期空日期日期格式传统日期格 式 传 统 日 期 格 式-受 到s e t命令的影响set d ate to setcentury on|off-VFP5.0及以前版本的默认格式-系统默认日期 格 式(月/日/年)(日年 美 国mm/d d/yy hh:mm:ss a|p09/20/98 1:05:50)-可以通过更改区域设置来更改日期格式setd ate to ymd set d ate to long set century on 严格日期格式严格日 期 格 式-不 受 s e t 命 令 的 影 响-V F P 6.0及以后版本的默
20、认格式(年/月/日)在 V F P 6.0 以后版本中怎样使用传统格式?-要 是用传统的格式需要使用s e t s t r i c t d a t e t o 0编译时常量什么时候可以使用:在 程 序 中(非交互方式下)本质:命名的数据项 格式:t t d e f i n e 常量名值6江苏省计算机等级考试二级V F P 复 习 资 料(2 0 1 0 年 10月)于帅引入原因:简便、批量修改变量给存储位置一个标号(变量名),存储内容是变化的,由程序(命令)来修改内存变量:由用户定义的内存中的一个(组)存储单元,变量名是存储位置的符号标志。其值可以由程序操作修改。使用过程中该存储单元中存放的数
21、据在程序操作期间通过变量名通过变量名去修改通过变量名创建变量V F P 的变量不需要特殊声明=(赋值)、S T 0 R E 值 T0变量名 访 问 变 量-字段变量与内存变量同名时,字段变量优先-此时要引用内存变量,在变量名前加M.或 M-x m=1 2 3 4?x m?m.x m?m-x m -例子:当前工作区打开了 JS表,当前记录的xm字段的值为“王一平”?x m,m.x m 控 制 变 量 控 制 变 量 的 访 问-程 序:为解决问题设计的一连串的 指 令-计 算 机 的 存 储 程 序 控 制 的 原 理-子 程 序 的 提 出:程序太长、有重复操作、提 高 程 序 的 可 读 性
22、-作 用 域:应用程序运行(内存变量)创建变量的工作区(字段)-P R I V A T E 私有当前及子程序(若程序中未定义,默认为私有)L O C A L 局 部 当 前 P U B L I C 公共(全局)所有运行的程序中(只能说明一次)命令窗口中变量均为PUBLIC型 公 共(全局):在当前工作期,任何程序都能使用全局变量 私 有:私有变量的作用范围是当前程序及子程序;私有变量允许在当前程序中使用调用程序(上级程序)中的同名变量,不影响变量的原始值;局部:局部变量只能在当前程序中使用,不能被更高层或更低层的程序访问内存变量的保存与恢复内存变量的保存与恢复显示:d isplay memoe
23、ry like 清除:clear memoery 保存到文件:savet o文 件 名(扩展名为mem)从文件恢复:restore from数 组(内存中有序的数据值系列)数 组 数 组:-由一系列被称为元素的有序数据值构成。-内存中连续的内存单元-多个变量共用同一个名称,并且连续存放在一个空间里的数据集合数组元素的表示7江苏省计算机等级考试二级VFP复 习 资 料(2010年1 0月)于帅-数组名(序号)数组的声明(任意数据类型)数组的声明(任意数据类型)私 有-DECLAR E数组名(下 标1)-DIMENSION数组名 下 标1,下 标2)数组名(下 标,公 用PUBLIC数组名(下 标
24、1)局 部LOCAL数组名(下 标1)声明之后,每个元素被默认赋予.F.值,在赋值时确定具体类型不能对已定义的数组再定义,但可以更改维数举 例:d imension d d(8)d d(5)=3 d imension d d(3,3)2 维数组在内存中也要顺序存放,顺序先行后列存放d d(l,1)d d(l,2)因 此1维 数 组 和2维数组在某种程度上等价?d d(3,2)结 果 为3,等价与dd(5),为数组元素赋值-给某个元素赋值数组名(I,1)=值s to r e-给所有元素赋相同值数组名=值,此时数组名代表所有数组元素-用表数据给数组赋值当数组名独立出现在=后时,代表什么?数组的第一
25、个元素x=d d 等价于xx=d d(l)字段字段型变量的类 型 由 设 计 阶 段 决 定-(表设计器、C R E A T E T A B L E)字段变量:字段中的值随指针的移动而变化,所以可视字段为变量对象类-对于拥有数据和一定行为特征对象集合的描述-例:汽车类一四轮、发动机、燃料、可以行驶对象-类的实例,属性、方法、事 件-例:黑白相间黑白相间的足球被踢黑白相间踢进了球门特征发生了 什 么 事 执 行 了 什 么 动 作 创 建 对 象 C re a te O b j e c t()函数mf=c re a te ob j e c t(f orm)mf.s h ow mf.b a c k
26、c olor=rg b (2 5 5,0,2 5 5)mf.c i rc le(1 0 0,1 0 0,1 0 0)不同数据容器作用域的差异编译时常量,只在程序中使用,作用域为私有对象的属性,通过对象和对象层次被引用例:汽车.发动机.燃料类型=汽油”8江苏省计算机等级考试二级V F P 复习资料(2 0 1 0 年 1 0 月)于帅运算符:运算符:操作符可用来处理同类型的数据(大多数时候)数 值 操 作 符-优 先 级 高 到 低()*或-*/%(取余数)+-%(取余数)的结果中符号同除数的符号6%5 6%-5 字符操作符(字符型、备注型)+两个字串直接相连(结果为字串)-第一个字串去掉尾部空
27、格与第二个字串相连,连接后字符串的末尾有空格(结果 为字串)$第一个字串是否包含在第二个字串中,结果为逻辑值?“I ”-“love ”-“pe a c e!”?“f a c e”$“h a ppy f a c e 日期和日期时间操作符日期和日期时间操作符(日期、整数)+日期+N今天后的第N天;日期时间+N日期时间加N秒-日 期-N今天前的第N天;日期时间-N日期时间减N秒日期-日期 返回天数日期时间-日期时间返回秒数逻辑操作符(逻辑数据)-优先级大到小()、N O T 或!、A N D、O R 例:4 2 O R 2 3 A N D N O T“3”$“1 2 3”4 2 O R (2 3 A
28、 N D (N O T (“3”$“1 2 3”)关系操作符:日期、逻辑关系操作符:用于同种类型的比较,包括字符、备注和数字相关的类型、型(真 假)-日期比较:数字越大,日期越大,越后发生的日期越大?(9/2 0/9 9)-9/1 5/9 9 -字符串比较:1)从左到右逐个比较,字符不同则根据字符排序序列决定两个字符串的大小,字符串比较的结果还受到是否精确比较的影响2)M ac h ine序列:按照机内码 机内码顺序排序。空格 大写字母 小写字机内码母 一级汉字(按拼音排序)二级汉字(按笔画排序)P inY in序列:汉字按拼音拼音序列排序。拼音对于西文字符,空格 小写字母 大写字母S tro
29、 ke序列:汉字按笔画笔画序列排序。笔画对于西文字符,空 格 小写字母 g g?&h h=3 4 5 6 (g g的值)英文句号的作用v=ab c vl=g g g?IIP P&V 1 2?结 果 应 该 是 p p g g g 2 还 是 p p ab cl 2?p p&vl.?p p&v.1 空值空值表示不确定的值,用N U L L或.N U L L.表示 空值具有以下特点-等 价 于 没 有 任 何 值-与0、“”、空格不同-排序优先于其它数据(不论升序或降序)-大多数函数均可使用SQRT(N U L L)-N U L L可以出现在任何使用值或表达式的地方-N u l l不是一种数据类型
30、,只 是 一 个 值?t yp e(.n u l l.)U U n d e f i n e d X=1 00X=.N U L L.?T Y P E(X”)空值的赋值和判断赋值-变量:变量名=.N U L L.-字 段CT RL+O (设 字 段 空 值)判 断-使 用I SN U L L函数判 断 空 值-I SN U L L对于空值返回对于空值返回.T.-I SN U L L对于0和空白或空字符串返回.F.-EM P T Y和I SBL AN K对于空值返回.F.-EM P T Y函数对于0和空白或空字符串返回和空白或空字符串返回.T.-I SBL AN K函数对于空白或空字符串返回函数对于
31、空白或空字符串返回N1 5江苏省计算机等级考试二级V F P复习资料(2 01 0年10月)于帅EM P T Y ()I SBL AN K ()I SN U L L ()空字符串.T.T.F.空白字段0.T.T.F.T.F.F.N U L L.F.F.T.在表达式中N U L L的行为数值型、日期型与N U L L值运算结果为N U L L逻辑型运算结果大多数为N U L L逻辑表达式中N U L L值的行为见 表2-1 4 -例:.N U L L.AN D.T.的结果N U L L可能为.T.AN D.T结果.T.N U L L 可能为.F.AN D.T.结 果.F.N U L L.AN D
32、.T.结果不能确定,所以为.N U L L.空值在命令或函数中的行为使用N U L L作为参数的通用规则-给命令传递N U L L值将产生错误GO .N U L L -接收.N U L L.为有效参数的函数其结果也为.N U L L.?SQRT(.N U L L.)-向本应接收数值型参数的函数传递.N U L L.值参数,将产生错误。-当传 递 N U L L 值 时,I SBL AN K O I SDI GI T O I SL O W ER()I SU P P EROI SAL P H AO EM P T Y。返回假值,I SN U L L。返回真值 返 回 真 值-SQL语句,判断用I S
33、 N U L L,I S N O T N U L L -SQL 合计函数将忽略N U L L 值-若所有值皆为N U L L,V FP 合计函数产生合计函数产生.N U L L.,则,否 则 N U L L 值将被忽略程序设计基础程序是为了完成某个具体任务而编写的一系列指令。V FP 程序由一系列代码组成,代码包括以命令形式出现的指令、函数或V FP 可以理解的任何操作程序设计的目标 程序设计的目标是为一些处理过程创建模型或者模拟这个过程,把现实世界或构想中的处理过程合乎逻辑地描述为逻辑或运算过程。程序的优点:与命令窗口输入命令相比,程序的优点-程序可以被修改并重新运行1 6江苏省计算机等级考
34、试二级V FP 复习资料(20 1 0 年 1 0 月)于帅-可以从菜单、表单和工具栏启动程序。-一个程序可以调用其他程序-具有在命令窗口中不能使用的结构化程序设计命令 结构化程序设计命令。结构化程序设计命令程序的创建和运行创建-界 面 方 式-命 令 方 式 M od i f y C omma nd 程 序 名 运 行-界 面 方式-命 令 方 式 D o 程序名wi th 参 数 程 序 文 件 扩 展 名-P rg 程序 文 件-Fxp伪编译程序程序结构程序结构主要分为:-顺 序结构-分支结构-循环结构顺序结构:按照顺序依次执行程序中的命令-例 1:创建表单 mf=createob je
35、ct(form)mf.showmf.b ackcolor=rgb (255,0,255)mf.circle(100,100,1 0 0)-例 2:计 算 数 据 input”请 输 入 要 计 算 的 数 据”to xy=5*X|3+6*x-2+7*x+8?y分支结构:根据条件分支的测试结果执行不同的操作 _ 类型:If.else.end if 语句 Do case.end case语 句-分支结构的语法格式:I F条 件DO CASE命令组1CASE条件1 ELSE命 令 组1命令组2 CASE条 件2 ENDIF命令组2 CASE条 件N命令组N OTHER W ISE其他命令组ENDCA
36、SE循环结构:使一组语句重复执行若干次(P144例5.9)-类型:FOR ENDF0RDO W HILEENDD017江苏省计算机等级考试 二 级V F P复习资料(2010年1 0月)SCANENDSCAN于帅循环结构的语法格式F O R特点:循环次数固定F O R循环变量=初 值T 0终 值 STEP步长命令组ENDFOR W HILE特点:循环次数不固定循环变量=初 值DO W HILE条件命令组改变循环变量的语句ENDD0-循环结构中的LOOP和EXIT命令:一般 放 在I F嵌套中LOO P短 路 语 句-跳过后面的语句进入下一次循环-例:显示1100之间非3的倍数的所有奇数EXIT
37、退出语句-直接退出循环-例:找 到8090之间的随机数FOR 1=1 TO 100 step 2 X=0 ifmod (I,3)=0 Do while.t.loop x=rand ()*100 end if if x70 andx80?I exit ENDFOR end if End d o?x过程与用户自定义函数 用户可以将经常执行的具有某种功能的一段代码独立出来,创建一个过程或 用 户 自 定 义 函 数UDF(User Defined Function)优点:减少了代码量,提高了程序的可读性和维护性,是结构化程序设计的精髓所 优点:减少了代码量,提高了程序的可读性和维护性,在。过程与用户
38、自定义函数除了定义方式的差别外,在可以实现的功能和调用的方法上没有区别。过 程 与 用 户 自 定 义 函 数 的 定 义 接 收 参 数 接 收 参 数Function函 数 名Function函 数 名parameters参数列表多行代码多行代码 return 值 return 值 end func end func-Proc 过程名 Proc 过程名-18江苏省计算机等级考试二级VFP复习资料(2010年1 0月)多行代码 return 值 end proc于帅parameters参 数 列 表多 行 代 码return值end proc过程与用户自定义函数的调用调用方法使用D o命令,
39、无法返回 值-D o函数名(或过程名)-D o函数名(或过程名)with参数 列 表 使 用 函 数 的 调 用 方 式-=函数名(参数列表)保 存 方 式-独 立 文 件.PR G此时函数 名为 文 件 名-程 序 中 过 程 和 函 数(集中代码)-程 序 底 部-过 程 文 件-需 要 用set procd ure t o命令先打 开 程 序 文 件-数 据 库 的 存 储 过 程-需 要 先 打 开 数 据 库 向 过 程和函数传递参数p a r a m e t e r s()-返回最近执行的程序的实参的数目-?r e c n o ()?r e c n o (3)实参的数目 go b
40、ottom相对于记录的逻辑顺序逻辑顺序-Locate for.continue24江苏省计算机等级考试二级VFP复习资料(2010年 1 0 月)-Locate for找到第一条符合条件的记录Continue接着找第2、3条于帅5、记录的修改界面方式的记录修改(浏览窗口)-单个记录的 修 改-批 量 记 录 的 修 改“表”菜单一一“替换字段”命 令-例:学 号 的 首 位 为 9 更 改 为 1 9 9,首 位 为 0 更 改 为 2 0 0 条件left(xh,1)=9 字段 xh 替换为“19”+xh 范围 all-例:更改教师基本工资,教授加60 0,副教授500,讲 师 400,助
41、教 300条 件 zc=教授”字 段 jb gz替换为jb gz+600范 围 all使 用 SQL命 令 修 改 记 录-Upd ate表 名 Set字段名=表达式.where条件-例:upd ate js set jb gz=jb gz+100 whereyear(d ate()-year(gzrq)29 使用 VFP 命令修改记录-R eplace字段 with 表达式 for 条 件-例:close tab les all use js(要求被操作的表在当前工作区!)replace jb gz with jb gz+100 fory e a r (d a t e ()-y e a r
42、(g z r q)2 9使用命令修改记录的两种方式的区别:RE P L AC E命令只能修改在当前工作区打开座,而UP D ATE SQ L命令在执行时会首先在最小未使用的工作区中打开表(即不需要事先打开表)6、记录的删除:要彻底地删除表中的记录,需要分两个步骤来实现:首先标记要删除的记录,然后彻底删除带有删除标记的记录。标记要删除的记录:-界面方式删除单个记录:单击删除标记列删除批量记录:“表”菜单一“删除记录”一“删除记录”窗 口 例:删 除 所 有 不 及 格 的 成 绩 信 息-命 令 方 式D E L E TE FRO M表 名WHE RE条 件-D E L E TE D E L E
43、 TE FRO M C J WHE RE C J60 (VFP 命令,需要操作的表处于打开状态)-D E L E TE FO R C J60 IN C J使用命令修改记录的两种方式的区别:D E L E TE命令只能对已打开的表进行操作;D E L E TE SQ L命令无需 打 开 表(和UP D ATE SQ L 一样,系统会自动打开表。)彻底删除带标记的记录:2 5江苏省计算机等级考试二级VFP复 习 资 料(2 0 1 0年1 0月)于帅-界面方式:表菜单彻 底 删 除-命 令:P AC K-Z AP:彻底物理删除所有记录彻底删除记录要求表必须在当前工作区独占独占打开 独 占 恢 复
44、带 删 除 标 记 的 记 录-界 面 方 式:“表”菜单一恢复记录一恢复记录窗口单击删除标记列-命令:RE C AL L对带删除标 记 的 记 录 的 访 问-D e l e t e d()检验当前记录是否带删除标记-控制是否处理(浏览 计算)带有删除标记的记录SET DELETED O N忽略带有删除标记的记录SET DELETED O F F允许访问带有删除标记的记录7、数据的复制Copy to-将当前工作区中的表复制到其他文件,该文件可以其他类型文件-Copy t o目标文件名field s字段列表for 条件 sd f|xls|.例:copy to xsOl for xb=女 cop
45、y toxs02 field s xh,xm,xb copy to xs03 xls 8、数据的统计:对当前工作区打开的表数据进行统计Count(计数)-Count范 围f o r条件 to 变量 count rest for cj=N=2 7 m-l)排序的方法:按照某个逻辑顺序,生成新表文件按照某个逻辑顺序,建立逻辑顺序号与物理顺序记录号的对照表,并把对照表保存到文件中,称为索引法 索 引 法-索 引 技 术 优 点:建立速度快;占用空间小;对一个表可建立多个对照表(索 引)且保存在同一个索引文件中。索引概述 索引-是按照索引关键字索引关键字从大到小或从小到大的顺序,建立的索引序号和对应的
46、表索引关键字记录号的对照表-作用:提供了对数据的快速访问,且可以对表中的记录强制实现唯一性索引关键字(索引表达式)-用来作为建立索引依据的一个字段或字段表达式多字段建立索引表达式的注意事项-为字符性表达式时,各字段的前后顺序影响排序结果x d h+x b x b+x d h -为算术表达式时,按照运算结果进行排序j b g z+g w j t W s t r(j b g z)+s t r(g w j t)-不同类型字段构成一个表达式时,必须转换为同一类型(通常为字符型)x b+s t r(j b g z)d t o c(g z r q,l)+s t r(j b g z)索引标识(t a g)-
47、为了区分一张表的不同索引,每个索引都必须有一个索引名,即索引标识-一般索引标识与索引关键字相同或相近 索 引 名 索 引 表 达 式 x s x h x hx m b x m+x b 索引的类型2 7江苏省计算机等级考试二级V F P 复 习 资 料(2 0 1 0 年 10月)于帅类型关键字可否重复一 张 表 建 立 个 数 一 个 多 个 多 个 多 个 自 由 表 否 是 是 是适 用 范 围 库 表 是 是 是 是主索引侯选索引普通索引唯一索引否 否 是 是注:唯一索引的关键字虽然可以重复,但在索引文件中重复的值只 记 录(存储)一 次 只 记 录(存储)只记录索引文件的种类:索引文件
48、的种类:复合索引文件(存储多个索引).cd x-结构复合索引文件与表文件的主文件名同名,创建时系统自动给定。与表文件一同打开、更新、关闭,可视为表结构的一部分-非结构复合索引文件 文件名由用户给出,与表名不同,不自动打开,只有用打开索引文件命令将其打开才能起作用。不能包含主索引独立索引文件(只存储一个索引).id x不会随表的打开而自动打开,文件名由用户给定。创建结构复合索引用表设计器创建结构复合索引:表设计器“索引页面”,输入索引名称,选择索引类型,输入索引表达式,单 击“索引名”左侧的按钮选择升序或降序。用命令创建结构复合索引-Ind ex on 索 引 表 达 式 tag 索 引 标 识
49、 ascend ing|d escend ingunique cand id ate-例:普通:ind ex on cj for kcd h=01 tagcjOl d escend ing 候选:ind ex on xh tag xsxh ascend ing cand id ate唯一:ind ex on zyd h tag zyd h unique索 引 的 修 改-表 设 计 器-Ind ex命 令 覆 盖 改 写 索 引 的 删 除-表 设 计 器-Delete tag索引名 例:d elete tag xsxh,xmb d elete tag all索引的使用索引文件的状态28江苏省
50、计算机等级考试二级VFP复习资料(2010年 1 0 月)-于帅打开或关闭打开后控制(不控制)表的处理顺序打开后的索引,如果没有被指定起控制作用,则表中记录仍按物理顺序显示和访问主控索引-在某一时刻对表的显示和访问起控制作用的索引设置主控索引打开表的同时指定主控索引-Use表 名 ord er索引标识asce|d esc例:use xs ord er xsxh打开表后再设置主控索引-Setord er t o 索引标识asce|d esc-Set ord er t o 关闭主控索引例:use xs set ord er to xsxh利用索引快速定位记录Seek命 令-在具有索引的表中使用-基