VFP全国串讲笔试考点.docx

上传人:b****6 文档编号:6230154 上传时间:2023-01-04 格式:DOCX 页数:80 大小:116.87KB
下载 相关 举报
VFP全国串讲笔试考点.docx_第1页
第1页 / 共80页
VFP全国串讲笔试考点.docx_第2页
第2页 / 共80页
VFP全国串讲笔试考点.docx_第3页
第3页 / 共80页
VFP全国串讲笔试考点.docx_第4页
第4页 / 共80页
VFP全国串讲笔试考点.docx_第5页
第5页 / 共80页
点击查看更多>>
下载资源
资源描述

VFP全国串讲笔试考点.docx

《VFP全国串讲笔试考点.docx》由会员分享,可在线阅读,更多相关《VFP全国串讲笔试考点.docx(80页珍藏版)》请在冰豆网上搜索。

VFP全国串讲笔试考点.docx

VFP全国串讲笔试考点

第一章:

VisualFoxPro基础

一、VFP6.0的作用

VFP6.0关系数据库系统是新一代小型数据库管理系统的杰出代表,它以强大的性能、完整而又丰富的工具、较高的处理速度、友好的界面以及完备的兼容性,深受广大用户的喜爱。

VFP是第一个全面支持面向对程序设计(OOP)的数据库语言。

VFP6.0拥有的近500条命令,200余种标准函数。

二、计算机数据管理的发展

1、人工管理(20世纪50年代中期以前)

这一时期计算机数据管理的特点是:

数据与程序不具有独立性,一组数据只对应一组程序;数据不长期保存,程序运行结束后就退出计算机系统,一个程序中的数据无法被其他程序利用,因此程序与程序之间存在大量的的重复数据,称为数据冗余。

2、文件系统(20世纪50年代后期至60年代中期)

程序与数据有了一定的独立性,程序和数据分开存储,由于程序文件和数据文件的区别,数据文件可以长期保存在外存储器上。

3、数据库系统(20世纪60年代后期)

提高了数据的共享性,使多个用户能够同时访问数据库中的数据,减小数据的冗余度,可以提高数据的一致性和完整性,提供数据与应用程序的独立性,从而减少应用程序开发和维护代价。

4、分布式的数据库系统(20世纪70年代)

数据库与网络技术的结合,可分为紧密结合型和松散结合型

5、面向对象的数据库系统(20世纪80年代后期)

面向对象的方法与数据库的结合

1.1.2数据库系统(DBS)

一、数据库(DataBase)

DBS(DB)DBMS

存储在计算机存储设备上,结构化的相关数据的集合。

1、数据的冗余度最小

2、资源共享性和数据独立性

3、安全可靠,保密性能好

二、数据库应用系统(DBAS)

(DataBaseApplicationSystems)

指系统开发人员利用数据库资源开的面向某一类实际应用的应用软件系统.

三、数据库管理系统(DBMS)

(DataBaseManagementSystem)

对数据库进行管理的系统软件

四、数据库系统(DBS)

引入了数据库技术后的计算机系统。

它实现了有组织地、动态地存储大量关联数据及提供数据处理及信息共享的手段。

1、组成

数据库(DB)

数据库管理系统(DBMS)及相关软件

数据库管理员及用户

硬件系统

DBS包括DB和DBMS

数据库系统的核心是数据库管理系统

1.1.3数据模型和二维表

通过计算机处理数据,首先存在着把事物及事物间的联系抽象为计算机所能接收的数据的一个过程。

一、实体描述

1、实体

客观存在并可以相互区别的事物

形式:

实际存在的事物.(例:

职工,图书)

抽象的事件.(例:

职工的比赛活动,借阅图书)

2、实体属性

描述实体的特性称为属性

例:

职工属性(职工号,姓名,性别,出生日期,职称)

图书属性(总编号,分类号,书名,作者,单价,出版社)

 实体:

属性值的集合

 实体型:

属性的集合

 实体集:

同类型实体的集合

VisualFoxPro中,表的字段对应实体的属性;表中的记录对应一个具体的实体;表对应实体集;某个记录属性的集合对应实体型。

二、实体间联系

1、联系

  实体与实体间的对应关系,它反映现实世界事物之间的联系。

三、数据模型

1、概念:

DBMS中表示实体与实体间联系的方法

2、数据模型的种类

层次模型:

通过树型结构来反映实体与实体间联系的方法,适宜于反映实体之间1:

n的关系;

网状模型:

通过网状结构来反映实体与实体间联系的方法,适宜于反映实体之间m:

n的关系;

关系模型:

用二维表格的结构形式来表示实体及实体间的联系。

1.2关系数据库

1.2.1关系模型

用二维表的形式表示实体及实体间的联

系的数据模型称关系数据模型。

一、关系术语

1、关系:

一个关系就是一张二维表,每个关系有一个关系名。

在VisualFoxPro中,一个

关系就是一个表文件。

2、属性:

二维表中垂直方向的列称为属性,

在VisualFoxPro中叫字段。

3、域:

属性的取值范围。

4、元组:

二维表中水平方向的行称为元组,

在VisualFoxPro中叫记录。

5、关键字:

属性或属性的组合,其值能唯一标识一个元组,分主关键字和候选关键字.

6、外部关键字:

如果一个字段不是本表的主字或候选关键字,而是另外一个表的主关字或候选关键字,则此字段(属性)为外部关键字。

总结:

1、关系是元组(或实体)的集合,对应VFP中的表。

2、关系模式:

实体属性的集合,对应表记录的属性。

3、元组:

属性值的集合,对应VFP中的记录。

4、关系模型:

若干个相互联系的关系模式的集合,在VFP中对应数据库。

1.2.2关系运算

一、传统的集合运算

1、并:

指由属于两个关系R,S元组组成的集合。

2、差:

指属于关系R但不属于关系S的元组组成的集合,

即差运算的结果是从R中去掉S中也有的元组。

3、交:

由即属于关系R又属于关系S的元组组成的集合,即交运算的结果是R和S的共同元组。

注:

以上运算均要求两个关系R,S必须具有相同的实型体,即属性集合要相同。

二、专门的关系运算

关系运算的操作对象是关系,运算的结果仍为关系。

1、选择

从关系中找出满足给定条件的元组组成新的关系。

也就是说,选择运算是在二维表中选择满足指定条件的行。

例:

在Student(学生基本情况)表中,若要找出所有女学生的元组,

就可以使用选择运算来实现,条件是:

Sex=“女”。

2、投影

从在关系中指定若干个属性组成新的关系。

投影是从列的角度进行运算,相当于对关系进行垂直运算。

3、联接

联接运算是将两个关系模式拼接成一个更宽的关系模式,生成的新关系中满足联接条件的所有元组。

(联接是关系的横向结合)

联接过程通过联接条件来控制,联接条件中将出现两个表中的公共属性名。

自然联接

第二章:

表的创建及常用命

VisualFoxPro6.0是一个32位数据库开发系统

一、表的创建

表的组成:

表由表结构和表中数据组成

建立数据库表(.dbf)即表结构的四种方法:

(1)、通过项目管理器

(2)、通过”新建”菜单

(3)、通过数据库设计器

(4)、通过命令方式

Create[TableName]

eg:

create学生表.dbf

eg:

ceratexs.dbf

1、Null

在表设计器中,Null用于表示字段值是否允许为空,Null在此表示的是缺值或无确定的值,即中数据库中尚未存储数据的字段,它与空字符串,数值0等含义不同。

二、修改表结构,启用表单设计器

modifystructure

三、给当前表追加新记录

append命令或ctrl+y

命令格式

Append[Blank]

功能:

该命令用于向当前表末尾添加空记录或以交互式填写记录。

命令说明

(1)、Blank子句用于在表尾添中空记录,若省略Blank参数,则进入记录编辑对话框以交互式输入记录。

(2)、若添加的是空记录,要向表中输入数据,则还需用Edit,Change或Browse等命令来实现。

eg:

use学生表

append

****四、补充四个标识符

(1)、Bof(文件头):

BeginningOfFile具体的位置是最上面那一条记录的上面。

(2)、Top(顶端):

最上面的那条记录,并不等同于1号记录。

(3)、Eof(文件尾):

EndOfFile最下面的那条记录的下面。

(4)、Bottom最下面那条记录,不一定是记录号最大的记录。

EOF

BOTTOM

TOP

BOF

五、三个常用函数

(1)、Recno()测试当前记录的记录号,结果为N型。

(2)、Bof()测试当前记录指针是否指向BOF,结果为L型。

(3)、Eof()测试当前记录指针是否指向EOF,结果为L型。

六、go(或goto)指针的绝对定位。

eg:

goN/Top/Bottom。

N是代表记录号。

七、skip

格式:

skip1

功能:

以当前记录作为参考点,向下或向上移动指针。

其中N是代表移动的记录数。

八:

displaylist

格式:

display[范围]for表达式,如果没的for表达式,表示范围为显示当前记录。

补充:

VFP中的四个范围

(1)All表示全部记录,All与当前的记录无关。

(2)NextN

N代表的记录数,

表示从当前记录开始往下数,总共有N条记录,包括当前记录。

如:

use学生表

go3

display

displayall

go2

displaynext2

(3)RecordN表示记录为N那条记录。

与当前记录无关。

如:

go2

displayrecord3注:

显示3号记录

(4)Rest表示从当前记录开始,

往下到最后一条记录,包括当前记录。

如:

go2

displayrest(显示的是:

2、3、4条记录)

八、list

格式:

list[范围]for表达式

功能:

显示记录所有记录

如:

usexs

go2

list

?

recno()2

九、使用Browse命令浏览记录

命令格式

Browse

命令功能

该命令用于打开浏览窗口以浏览表中的记录。

【例】假设已建立一个Student表,则要浏览Student表中的内容,可采用如下命令:

UseStudent

Browse

十、insert命令

格式:

Blank[Before][Blank]

功能:

在表的任意位置插入一条记录

说明:

(1)、Before子句用于在当前记录前插入新记录,缺省则在当前记录之后插入新记录.

(2)、Blank子句用于插入空记录,若缺省则出现记录编辑对话框

(3)、若添加的是空记录,则要向表中输入数据,还需用Edit,Change或Browse等命令来实现。

VFP中记录的删除要经历两步:

(1)逻辑删除,即先在要删除的记录上加删除标记;

(2)物理删除,即用Pack命令将带有删除标记的所有记录从表中物理删除。

VFP提供了三种删除记录的命令:

Delete(逻辑删除即置删除标记)。

Pack(物理删除)命令以及Zap(全部删除)命令。

另外,VFP也提供了对已标记删除标记的记录进行恢复的Recall命令。

十一、置删除标记Delete命令

逻辑删除指在满足条件的记录上打上删除标记”*”,并不真正将其从表中删除。

格式:

Delete[ForlExpression1]pack

功能:

对当前表上满足条件的所有记录加上删除标记”*”。

说明:

For子句用于将满足条件的所有记录加上删除标记,若缺省,则在当前记录置删除标记。

【例】若要逻辑删除Student表中的第3条记录,那么可以使用如下命令:

UseStudent

Go3

Delete

【例】若要逻辑删除Student表中的所有的男生记录,那么可以使用如下命令:

Use学生表

DeleteFor性别=“男”

十二、恢复记录Recall命令

格式:

Recall[ForlExpression1]

功能:

用于对已做了删除标记的记录进行恢复操作,即撤消记录上的删除标记”*”。

说明:

For子句用于恢复所有满足条件的记录,若缺省则只恢复当前记录。

若当前记录上无删除标记,则什么都不做。

例:

恢复当前表中已经删除的女生记录

RecallFor性别=“女”

十三、物理删除所有带有删除标记的记录Pack命令

格式:

Pack

功能:

对当前表中所有已做了删除标记的记录进行物理删除操作。

十四、物理删除表中的所有记录Zap命令

格式:

Zap

功能:

物理删除当前表中所有记录,不管是否带有删除标记。

说明:

(1)、该命令只删除表中的记录,并不删除表的结构。

(2)、该命令等同于Delete和Pack两条命令的组合。

(3)、该命令删除时全部删除,而不管记录上是否带有删除标记。

十五、Copyto

格式:

Copy[范围]To新表名For表达式Fields字段名列表。

功能:

将当前表中指定范围内满足For表达式的记录复制生成新的表文件。

其中新的表文件所包含的字段由Fields后面的字段列表决定。

例如:

Usexs

Copytoj:

\student.dbf

Copytoj:

\student.dbffields学号,姓名

Usexs

Go2

DeleteNext2

Copytoj:

\xs1.dbffordelete()

十六、Copystructureto

格式:

Copystructureto表文件fields字段名表

功能:

将当前表的结构复制生成新的表文件,生成的表是一个空表。

例如:

usexs

list

copystructuretonew.dbf

usenew

liststructure

modifystructure

注:

第十五和十六条命令的to后面必须是一个新的文件或是一个处于关闭状态下的表文件,如果是一个处于打开的状态下的表文件,则系统将会出现”文件正在使用”

closeall

十七、copystructureto结构描术文件extended

功能:

将当前表文件的结构生成一个结构描术文件。

结构描术文件也是一个表文件,只是它的结构是由VFP自动设置的。

例如:

usexs

copystructuretonew1extended

usenew1

liststructure

*十八、AppendFrom

格式:

AppendFrom表文件for表达式

或AppendFromarray数组名for表达式

功能:

将另一个表中满足for表达式的记录追加到当前表中,或者将一个数组中满足for表达式的数据添加到当前表。

例如

1、先打开表

useaa

2、使用appendfrom

Appendfromxs.dbf

则将xs.dbf中所有的记录添加到aa.dbf的后面。

十九、Clear清屏作用

第三章:

VFP基础知识

3.1常量和变量

据计算机处理数据的形式来划分,VFP除表中的数据外,还有常量,变量,表达式,函数四种形式的数据,而对于每一种数据来说,都有一定的类型,数据类型决定了数据的存储方式和运算方式。

对一个表中的数据,其类型是在定义表的结构时定义的。

常见的数据类型有:

1、字符型2、数值型3、货币型

4、日期型5、日期时间型6、逻辑型(L)

3.1.1常量

1、常量:

指程序运行期间其值不变的量,其类型主要有以下六种:

(1)字符型常量:

用定界符(单引号‘’、双引号”“和方括号[])括起来的字符串。

(示例:

”ade”‘568’[book]“‘book’的中文意思是‘书’。

”)

注意:

定界符不作为字符型常量本身,但它规定了常量的类型以及常量的起始与终止界限

字符型常量的定界符必须成对匹配(例:

”myname’,[bcde”两个表示均错]

若某种定界符也是字符串本身的内容,则需要用另一种定界符作为该字符串的定界符.(例:

“’abcd”,[“abc[ned]”])

不包含任何字符的字符串(““)叫空串,它与包含空格的字符串(““)不同

(2)数值型常量:

用来表示一个数量的大小

构成:

由数字,负号,小数点构成.

表示形式:

一般:

538,-10.5

科学记数法:

56E-12,34E4,-1.05E+20

(3)货币型常量:

用来表示货币值,书写时应加前导符”$”

注:

货币型常量无科学记数表示法,其处理和运算时采用4位小数,如果一个货币型常量多于4位小数,则系统会自动将多余的小数四舍五入。

例:

$123.45678将存储为$123.4568(超过4位自动四舍五入)

例:

$332E12(错误)$435(正确)

(4)日期型常量:

表示一个确切的日期,

{^花括号作为}定界符,分隔符为斜杠(/),连字符(-)或空格中任一种,默认为斜杠(/)。

12-22-1980

影响日期格式的命令:

(1)SETMARKTO[日期分隔符]

功能:

设置日期的分隔符

分隔符可设置为”/”,”“,”-”,缺省时系统统默认为斜杠

(2)SETDATE[TO]AMERICAN|ANSI|YMD等

功能:

设置日期的的显示格式,默认为美国格式

(3)SETCENTURYON/OFF

功能:

设置日期型数据显示时年份以2位还是以4位显示。

(4)SETSTRICTDATETO[0/1/2]

功能:

用设置是否对日期格式进行检查

0表示不进行严格日期格式检查,与早期FoxPro兼容

1表示进行严格日期格式检查,系统默认

2表示进行严格日期格式检查,且对CTOD()和CDOT()函数也有效。

(5)逻辑型常量:

只有逻辑真或逻辑假两个值,用句点(..)来作定界符

逻辑真的表示形式有:

.T.,.t.,.Y.,.y.

逻辑假的表示形式有:

.F.,.f.,.N.,.n.

(示例:

.t..T..f..F..Y..N..y..n.)

注:

逻辑型常量的定界符不能省略

3.1.2变量

变量:

在使用过程中其值可以改变的量。

分为字段变量、内存变量两大类

1、字段变量

2、内存变量

(1)、内存变量:

它是内存中的一个区域,其值就是存储于该区域里的数据,它常用来存储常数、中间结果或最终结果。

(2)、内存变量的类型包括:

字符型(C),货币型(Y),

日期型(D),日期时间型(T),

数据型(N),逻辑型(L)六种.

(3)、当内存变量名与字段变量名同名时,字段名优先于内存变量名,若确实要使用内存变量,则可在其前加上”M->或(M.)”以示访问的是内存变量,而非字段变量。

3.1.3内存变量常用命令

一、内存变量的赋值

格式1:

STORE<表达式>TO

store<变量名列表或数组名列表>

功能:

将表达式的值赋给一个或多个内存变量.

格式2:

内存变量名=<表达式>

格式2只能给一个变量赋值,而格式1可给多个内存变量或数组赋值。

【例如】

store3*4toa1,a2,a3,a4,a5则a1,a2值均为12

【例如】

b1=3将b1赋值3;

b2=b1+2将b1加2后的值赋给b2,此时b2等于5;

b2=b2+3将b2加3后的值再赋给b2,此时b2等于8。

说明:

一个变量的值可以不断变化,最终结果是它最后一次的赋值,在此,”=“不是等于运算符,而赋值运算符。

2、表达式值的显示

?

?

?

3、显示内存变量

格式:

LIST/DISPLAY[LIKE<通配符>][TOPRINTER/TOFILE<文件名>]

说明:

LIST默认显示全部记录

DISPLAY则默认显示当前记录

通配符指”?

”和”*”。

?

表示任意的一个字符。

*:

表示任意多个字符。

like短语用于显示与通配符匹配的内存变量

4、释放内存变量

格式1:

RELEASE<内存变量名表>

格式2:

RELEASEALL[LIKE<通配符>/EXCEPT<通配符>]

格式3:

RELEASEALL[EXTEND]

格式4:

CLEARMEMORY

说明:

(1)、格式1用释放指定的内存变量。

(2)、格式2:

选用LIKE短语用于清除与通配符本匹配的内存变量,若选用EXCEPT短语,用于清除与通配符不相匹配的变量。

(3)、格式3用于清除所有内存变量。

(4)、格式4用于在关闭所有文件的同时清除所有的内存变量。

示例:

RELEASEALL

RELEASEX,Y,Z

RELEASEALLLIKEA*

二、数组

2、数组的定义

命令格式:

Dimensiondeclare<数组名1>(<下标上限1>[,<下标上限2>])

说明

(1)<下标上限>为数组下标,对一维数组来说,指的是数组元素的个数;对二维数组来说,指的是数组的最大行号和最大列号。

(2)数组的下标允许使用圆括号或方括号括起来。

(3)在同一个数组中,不同的数组元素数据类型可以不同。

(4)数组一旦被定义之后,

该数组的每个元素的初值为逻辑假值,

即.F.,可以使用有关的命令给数组元素赋值。

(5)数组应先定义,再使用,这与普通的内存变量不一样。

例如:

Dimensionaa(3),C[2,3]

二维数组举例:

DIMENSIONA(2,3)

A(1,1)=1A(1,2)=2A(1,3)=3

A(2,1)=4A(2,2)=5A(2,3)=6

1

2

3

4

5

6

?

a(1,1)

二维数组元素的存放:

按行存放

例如:

给二维数组X和一维数组Y进行赋值。

DIMENSIONX(3,4),Y(3)

STORE5TOX

Y

(1)=325

Y

(2)=“ABC”

Y(3)=.T.

5、表中数据与数组数据之间的交换

(1)、表中的数据传送到数组的语句

格式1:

SCATTERTO<数组名>

例:

DIMEA(9)

USE学生表.dbf

SCATTOA

?

A

(1),A

(2),A(3)

(2)数组中的数据复制到表的的当前记录

格式1:

GATHERFROM<数组名>[FIELDS<字段名表>][MEMO]

格式2:

格式1:

将数组中的数据作为一个记录复制到表的当前记录中,从第一个数组元素开始,依次向指定的字段填写数据。

例dimeA(3)

STORE“0”TOA

USE学生表

GATHFROMA

3.2表达式

1、表达式是指用运算符将常量、变量、字段或函数连接起来的有意义的式子。

2、表达式值:

表达式最终计算结果

3、表达式的类型:

由表达式值的数据类型决定,主要有:

数值型、字符型、日期型、关系型、逻辑型等。

3.2.1数值、字符与日期时间表达式

1、数值表达式

数值表达式是由算术运算符将常量、变量、字段或函数连接起来的式子,其结果仍为数值型数据。

(1)、数值运算符:

圆括号()、乘方(**或^)、乘(*)、除(/)、取余(%)、加(+)、减(-)。

(2)、数值表达式:

由数值运算符将数值型常量、变量、函数等连接起来的式子,其结果为数值型。

(3)、运算符的优先顺序:

括号、乘方、乘除与取模、加减。

例:

取余运算符(%)的应用。

?

10%3?

-10%3

2、字符表达式

字符表达式是由字符运算符将常量、变量、字段或函数连接起来的式子,其结果仍为字符型数据。

在字符运算符两边的数据必须是字符型数据。

(1)字符串运算符:

+、-、字符串包含运算符($)和精确比较运算符(==)。

说明:

+:

两个字符串首尾连接形成新字符串;

-:

当第一个字符串的尾部有空格时,

将第一个字符串尾部的空

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1