VFP知识点总结.docx

上传人:b****7 文档编号:9737507 上传时间:2023-02-06 格式:DOCX 页数:83 大小:130.96KB
下载 相关 举报
VFP知识点总结.docx_第1页
第1页 / 共83页
VFP知识点总结.docx_第2页
第2页 / 共83页
VFP知识点总结.docx_第3页
第3页 / 共83页
VFP知识点总结.docx_第4页
第4页 / 共83页
VFP知识点总结.docx_第5页
第5页 / 共83页
点击查看更多>>
下载资源
资源描述

VFP知识点总结.docx

《VFP知识点总结.docx》由会员分享,可在线阅读,更多相关《VFP知识点总结.docx(83页珍藏版)》请在冰豆网上搜索。

VFP知识点总结.docx

VFP知识点总结

第1章数据库系统基础知识复习要点

查询Ep36菜单Ep77表单ep61

数据库系统(DatabaseSystem,简称DBS)是实现有组织地、动态地存储大量关联数据,方便用户访问的计算机软硬件资源组成的具有管理数据库功能的计算机系统。

数据库是指以一定的组织形式存放在计算机存储介质上的相互关联的数据的集合。

数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可以供各种用户共享。

数据库按数据模型可分为层次数据库、网状数据库、关系数据库和面向对象数据库等。

数据库管理系统(DatabaseManagementSystem,简称DBMS)是用于建立、使用和维护数据库的系统软件。

数据库系统结构的三级模式:

外部层(单个用户的视图)、概念层(全体用户的公共视图)和内部层(存储视图)。

数据库系统结构的分级对于提高数据独立性具有重要意义。

数据模型(DataModel)是在数据库领域中定义数据及其操作的一种抽象表示。

长期以来,广泛使用的概念模型当属“实体—联系”模型(Entity-RelationshipModel,简称E-R模型)。

E-R模型中有3个基本的概念:

实体、联系和属性。

P8

在E-R图中,用矩形框表示实体集,菱形框表示联系,椭圆形框表示属性。

关系是以二维表结构来表示实体集及其实体间的联系。

一个关系就是一张二维表,关系的首行称为“属性”(在关系数据库中称为“字段”),其他各行称为“元组”(在关系数据库中称为“记录”)。

P9

关键字一张表中的一列或若干列能够把不同的记录区分开来,或者说能够唯一地确定记录。

超关键字二维表中能唯一地确定记录的一个列或几个列的组被称为“超关键字”(Super,Key)。

候选关键字如果一个超关键字去掉其中任何一个字段后不再能唯一地确定记录,则称它为“候选关键字”(CmldidateKey)。

主关键字从二维表的候选关键字中,选出一个可作为“主关键字”(PrimaryKey)。

对于表中的每个记录来说,主关键字必须包含一个不同于其他记录的唯一的值。

这就意味着主关键字的值不能为空,否则主关键字就起不了唯一地标识记录的作用。

外部关键字当一张二维表(如A表)的主关键字被包含到另一张二维表(如B表)中时,它就称为B表的“外部关键字”(ForeignKey)。

关系模型用二维表表示实体集,通过外部关键字表示实体间联系的数据模型称为关系模型。

它一般有三个组成部分:

数据结构、数据操作和完整性规则。

●数据结构数据库中所有数据及其相互联系都被组织成关系(即二维表)的形式。

●数据操作提供一组完备的关系运算,以支持对数据库的各种操作。

●完整性规则包括域完整性规则、实体完整性规则、参照完整性规则和用户定义的完整性规则等。

关系数据库的完整性规则:

在关系数据库中有域完整性、实体完整性以及参照完整性等。

域完整性规定了属性的取值范围;

实体完整性则要求任一元组的主关键字的值不得为空值并且必须在所属的关系中唯一;

参照完整性则要求当一个元组的外部关键字的值不为空值时,以该外部关键字的值作为主关键字的值的元组必须在相应的关系中存在。

关系是一种规范化了的二维表,一般要求满足3NF,即3范式。

关系的基本运算有两类:

P10

Ø一类是传统的集合运算(并、差、交等),

设有关系R和关系S,它们有相同的模式结构。

并操作R∪S:

结果生成一个新的关系,其元组由属于R的元组和属于S的元组共同组成:

R∪S={t|t∈R∨t∈S}∧∩

差操作R-S:

结果生成一个新关系,其元组由属于R但不属于S的元组组成:

交操作R∩S:

结果生成一个新关系,其元组由既属于R又属于S的元组组成:

R∩S={t|t∈R∧t∈S}

Ø另一类是专门的关系运算(选择、投影、联接)。

选择(限制):

在关系R中选择满足给定条件(逻辑表达式)的元组组成一个新关系。

选择运算是对关系的水平分解,其结果是关系R的一个子集。

投影:

是对关系的垂直分解,它是在关系R中选择出若干个属性列组成新的关系。

经过投影运算可以得到一个新关系,它包含的属性个数通常比原关系少,或者属性的排列顺序不同。

联接:

根据给定的联接条件将两个关系模式拼成一个新的关系。

联接条件中将出现两个关系中的公共属性名,或有相同语义的属性。

 

第二章VisualFoxPro数据库管理系统概述   复习要点P30

本章的总体要求:

熟悉VFP的数据类型、常用函数、能正确组成各种类型的表达式及正确掌握它们的运算结果。

几个常用的命令。

1.1.“*”和“&&”命令

2.2.“?

”和“?

?

”命令

3.3.CLEAR命令

4.4.DIR命令

5.5.MD/RD/CD命令

6.SETCENTURYON|OFF

7.SETDATE[TO]AMERICAN|ANSI|MDY|DMYIYMD|LONG

8.SETDEFAULTTO[路径说明]

扩展名

文件类型

扩展名

文件类型

扩展名

文件类型

.app

生成的应用程序

.frx

报表

.pjx

项目

.cdx

复合索引

.frt

报表备注

.pjt

项目备注

.dbc

.dct

数据库

数据库备注

.fxp

.idx

编译后的程序

独立索引

.prg

.fxp

程序

编译后的程序

.dcx

数据库索引

.lbx

标签

.qpr

生成的查询程序

.dbf

.lbt

标签备注

.qpx

编译后的查询程序

.fpt

表备注

.mem

内存变量保存

.scx

表单

.err

编译错误

.mnx

菜单

.sct

表单备注

.exe

可执行程序

.mnt

菜单备注

.tbx

备注备份

.fky

.mpr

生成的菜单程序

.vcx

可视类库

.fmt

格式文件

.mpx

编译后的菜单程序

.vct

可视类库备注

数据类型P39

类型

说明

大小

范围

字符型

任意文本

每个字符为1字节,最多可有254个字符

任意字符(字母、数字、空格、符号等)

日期型

包含日期的数据

8字节

01/01/1000~12/31/9999

日期时间型

包含日期和时间的数据

8字节

01/01/1000~12/31/9999,

00:

00:

00a~11:

59:

59p

数值型

整数或小数

在内存中占8字节;

在表中占1—20字节

-0.99999999E+19~0.999999999E+20

逻辑型

“真”或“假”的布尔值

1字节

“真”(.T.)或“假”(.F.)

整型*

整型值

4字节

—2147483647-2147483646

备注型*

数据块引用

在表中占4字节

只受可用内存空间限制

通用型*

OLE对象引用

在表中占4字节

只受可用内存空间限制

名称命名规则:

P41

数据容器、自定义函数或过程等都需要一个名称,如变量名、数组名、表的字段名、过程名和对象的属性名等。

●名称中只能包含字母、下划线“_”、数字符号和汉字符号。

●名称的开头只能是字母、汉字或下划线,不能是数字。

系统预定义了许多系统变量它们的名称均以下划线开头,因此用户在定义名称时应尽可能地避免使用以下划线开头的名称,并且表的字段名不允许以下划线开头。

●除了自由表的字段名、表的索引标识名至多只能是10个字符外,其余的名称的长度可以是1-128个字符。

●应避免使用系统保留字。

变量的创建:

P43

用store 或=号创建变量

控制变量访问:

用LOCAL指定局部变量:

用LOCAL创建的变量或数组只能在创建它们的程序中使用和修改,不能被更高层或更低层的程序访问,在它们所属的程序停止运行时,局部变量和数组将被释放。

用PRIVATE指定私有变量:

PRIVATE关键字将调用程序中定义的变量和数组在当前程序中隐藏起来,这样,用户便可在当前程序中重新使用和这些变量同名的变量,而不影响这些变量的原始值。

一旦拥有这些变量的程序停止运行,所有被声明为私有的变量和数组均可重新被访问。

用PUBLIC指定全局(公共)变量:

PUBLIC关键字定义全局变量和全局数组。

在当前工作期中,任何运行的程序都能使用和修改全局变量和全局数组。

在“命令”窗口中创建的任何变量或数组被自动赋予全局属性。

数组的声明及赋值:

●使用DECLARE命令,定义的是“私有数组”。

●使用DIMENSION命令,定义的是“私有数组”。

●使用PUBLIC命令,定义的是“全局数组”。

●使用LOCAL命令,定义的是“局部数组”。

函数(P46):

是一种预先编制好的程序代码,可供用户或程序调用。

函数名([参数1[,参数2[,…]]])

常用函数P47-P58

1.数值函数

(4)INT()函数

INT()函数的功能是计算一个数值表达式的值,并返回其整数部分。

INT(nExpression)

(5)MOD()函数*其功能与%(模)运算符相同

MOD(,

【功能:

返回除以后的模。

N1,n2为数值类型而且n2不能为零。

均为正数或均为负数时,函数的值为二者相除后的余数,符号与n2的符号相同。

当两个参数的符号相异时(即一正一负),函数的值为二者相除后的余数的绝对值与n2的绝对值之差,符号与n2的符号相同。

(6)ROUND()函数

ROUND()函数的功能是返回圆整到指定小数位数的数值表达式的值,即从该位四舍五人。

ROUND(nExpression,nDecimalPlaces)

(8)RAND()函数

RAND()函数的功能是返回一个0--1之间的随机数。

其语法格式如下:

RAND()

2.字符函数

(1)ALLTRIM()函数

ALLTRIM()函数的功能是计算指定字符表达式的值,返回删除前后空格后的字符串。

ALLTRIM(cExpression)

(2)TRIM()函数

TRIM()函数的功能是计算指定字符表达式的值,返回删除全部后缀空格后的字符串。

TRIM(cExpression)

(3)LEN()函数

LEN()函数的功能是返回字符表达式的值中字符的数目。

其语法格式如下:

LEN(cExpression)

(4)AT()函数

AT()函数的功能是返回一个字符表达式或备注字段在另一个字符表达式或备注字段中出现的位置(从最左边开始计数)。

AT(cSearchExpression,cExpressionSearched[,nOccurrence])

(5)SUBSTR()函数

SUBSTR()函数的功能是从给定的字符表达式或备注字段中返回一个子字符串。

SUBSTR(cExpression,nStartPosition[,nCharactersReturned])

(6)LEFT()函数

LEFT()函数的功能是从字符表达式最左边一个字符开始返回指定数目的字符。

LEFT(cExpression,nExpression)

(7)RIGHT()函数

RIGHT()函数的功能是从字符表达式最右边一个字符开始返回指定数目的字符。

RIGHT(cExpression,nExpression)

(8)SPACE()函数

SPACE()函数的功能是返回由指定数目的空格构成的字符串。

其语法格式如下:

SPACE(nExpression)

3.日期/时间函数

(1)DATE()函数

DATE()函数的功能是返回由操作系统控制的当前系统日期。

DATE()

(2)DATETIME()函数

DATETIME()函数的功能是返回当前的系统日期和时间。

DATETIME()

(3)DOW()函数

DOW()函数的功能是从日期表达式或日期时间表达式返回该日期是一周的第几天(第一天为星期日)。

DOW(dExpression|tExpression)

(4)DAY()函数

DAY()函数的功能是以数值型返回给定日期表达式或日期时间表达式的值是某月中的第几天。

DAY(dExpression|tExpression)

(5)MONTH()函数

MONTH()函数的功能是返回给定日期表达式或日期时间表达式的值中的月份值。

MONTH(dExpression|tExpression)

(6)YEAR()函数

YEAR()函数的功能是从指定的日期表达式或日期时间表达式的值中返回年份。

YEAR(dExpression|tExpression)

(7)TIME()函数

TIME()函数的功能是以24小时制、8位字符串格式(hh:

mm:

ss)返回当前系统时间。

4.数据类型转换函数

(1)ASC()函数

ASC()函数的功能是返回字符表达式中最左边字符的ASCII值。

其语法格式如下:

ASC(cExpression)

(2)CHR()函数

CHR()函数的功能是计算数值表达式的值,然后以该值为ASCII代码返回其对应的字符(即返回字符的ASCII码值为数值表达式的值)。

CHR(nExpression).

其中,数值表达式nExpression的值必须在0-255之间。

例如:

?

CHR(66)&&显示字符B

注:

在实际应用中,可用CHR()向打印机发送打印控制代码。

(3)VAL()函数

VAL()函数的功能是返回由数字组成的字符表达式的数字值。

即:

将字符数据转换成数值数据。

VAL(cExpression)

其中,字符表达式cExpression最多由16位数字组成,若超过16位,则对其圆整。

VAL()函数从左到右返回字符表达式中的数字,直至遇到非数值型字符(忽略前面的空格)时为止。

若字符表达式的第一个字符不是数字,也不是加、减号,则VAL()函数返回0。

(4)DTOC()函数和TTOC()函数

DTOC()函数和TTOC()函数的功能是由日期表达式或日期时间表达式的值返回字符型日期。

DTOC(dExpression|tExpression[,1])

TTOC(tExpression[,1|2])

其中,参数“1”用于指定以年月日顺序且无分隔符的形式返回字符型日期,参数“2”用于指定仅返回含时间部分的字符型时间。

(5)CTOD()函数和CTOT()函数

CTOD()函数的功能是把字符表达式的值转换成日期型数据,CTOT()函数的功能是把字符表达式的值转换成日期时间型数据。

CTOD(cExpression)

CTOT(cExpression)

其中,字符表达式cExpression的求值结果必须是从1/1/1000至12/31/9999范围内的一个有效日期,其默认格式是mm/dd/yy。

可用SETDATE和SETCENTURY来更改默认格式。

如果输入日期时未指定是哪个世纪(如字符表达式1/1/95),则假定为20世纪。

(6)STR()函数

STR()函数的功能是将数值表达式的值转换为对应的字符串。

STR(nExpression[,nLength[,nDecimalPlaces]])

其中,长度nLength用于指定STR()返回的字符串长度。

该长度包括小数点所占的字符和小数点右边每个数字所占的字符。

如果指定长度大于整个数值的宽度,STR()用前导空格填充返回的字符串;如果指定长度小于整数部分的数字位数,STR()返回一串星号,表示数值溢出。

nLength缺省时默认宽度为10。

小数位数nDecimalPlaces用于指定由STR()返回的字符串中的小数位数,缺省时宽度为0。

若要指定小数位数,必须同时包含长度。

如果指定的小数位数小于数值表达式的值中的小数位数,则截去多余的数字。

5.其他常用函数

(1)BETWEEN()函数

BETWEEN()函数用于判断一个表达式的值是否在另外两个相同数据类型的表达式的值之间,返回值为.T.或.F.或NULL。

其语法格式如下:

BETWEEN(eTestValue,eLowValue,eHighValue)

其中,eTestValue为测试值;elowValue用于指定范围的下界;eHighValue用于指定范围的上界。

如果一个字符型、日期型、日期时间型、数值型、浮点型、整型、双精度型或货币型表达式的值在另外两个相同数据类型表达式的值之间,BETWEEN()就返回“真”(.T.),否则返回“假”(.F.)。

如果eLowValue或eHighValue为NUlL值,则返回NULL值。

(2)INKEY()函数

INKEY()函数的功能是返回一个键码值,该值对应于键盘缓冲区中第一个按键操作。

INKEY([nSeconds])

其中,nSeconds用于INKEY()函数对键击的等待时间,缺省时INKEY()函数立即返回一次键击的值,为0时INKEY()函数一直等待到有键击为止。

如果没有按下键,则INKEY()函数返回0;如果键盘缓冲区中有多个键值,INKEY()函数只返回第一个输入到缓冲区的键的值。

(3)TYPE()函数

TYPE()函数的功能是返回表达式的值的类型。

TYPE(cExpression)

其中,表达式必须用引号。

(4)IIF()函数

IIF()函数的功能是根据逻辑表达式的值返回两个值中的一个。

IIF(LExpression,eExpression1,eExpression2)

其中,逻辑表达式IExpression的值为条件,当条件为真时返回eExpressionl的值,否则返回eExpression2的值。

(7)MESSAGEBOX()函数P45

MESSAGEBOX()函数的功能是显示一个用户自定义对话框。

其语法格式如下:

MESSAGEBOX(cMessageText[,nDialogBoxType[,cTitleBarText]])

其中:

字符表达式cMessageText用于指定在对话框中显示的文本,在表达式中包含回车符(以CHR(13)表示),可以使信息移到下一行显示;

对话框类型nDialogBoxType是一个数值表达式(缺省时为0),用于指定对话框中的按钮和图标、显示对话框时的默认按钮以及对话框的行为;

标题cTitleBarText用于指定对话框的标题,缺省时显示"MicrosoftVisualFoxPro"。

1)对话框按钮值从0到5指定了对话框中显示的按钮(见表2-9)。

2)图标值16、32、64指定了对话框中的图标(表2-10)。

3)默认按钮值0、256、512指定对话框中哪个按钮为默认按钮(表2-11)。

对话框类型可以是按钮值、图标值以及默认值的和。

数值

对话框按钮

0

仅有“确定”按钮

1

“确定”和“取消”按钮

2

“放弃”、“重试”和“忽略”按钮

3

“是”、“否”和“取消”按钮

4

“是”、“否”按钮

5

“重试”和“取消”按钮

数值

图标

16

“停止”图标

32

问号

48

惊叹号

64

信息(i)图标

数值

默认按钮

0

第一个按钮

256

第二个按钮

512

第二个按钮

MESSAGEBOX()函数的返回值标明选取了对话框中的哪个按钮。

在含有“取消”按钮的对话框中,如果按下[Esc]键退出对话框,则与选取“取消”按钮一样。

表2-12列出了MESSAGEBOX()函数对应每个按钮的返回值。

返回值

按钮

1

确定

2

取消

3

放弃

4

重试

5

忽略

6

7

(8)GETFILE()函数

GETFILE()显示“打开”对话框,并返回选定文件的名称。

GETFILE([cFileExtensions][,cText])

其中,文件扩展名cFileExtensions用于指定没有选择“所有文件”菜单项时,列表中显示的文件扩展名,文件扩展名的表示形式有多种:

●如果包含单一扩展名(如.prg),只显示具有此扩展名的文件。

●可以包含由分号分隔的文件扩展名列表(例如,包含“prg;fxp'’,可以显示扩展名为.prg或.fxp的所有文件)。

●如果只包含分号(;),则显示所有不带扩展名的文件。

●也可以包含通配符(*和?

),此时将显示扩展名满足通配符条件的所有文件。

字符串cText用于指定文件文本框前的标签。

VFP的运算符:

P58-P64

1.数值运算符:

操作数值型数据。

2.字符运算符:

操作字符型数据。

3.日期时间运算符:

操作日期或日期时间型数据。

4.关系运算符:

任意数据类型的数据比较,但要求关系运算符两边的操作数据的数据类型相同,运算结果为逻辑值。

5.逻辑运算符:

操作逻辑类型的数据,并且返回一个逻辑值。

表达式:

P58是通过运算符将常量、变量、函数、字段名等组合起来可以进行运算的式子。

表达式求值结果为单个值。

在此概念下,单个的常量、函数、字段名、控件以及属性都可看作是表达式的特例。

VFP的表达式可分为:

一般运算结果为相应类型的数据

Ø算术表达式

Ø字符表达式

Ø日期表达式、

Ø逻辑表达式、

Ø关系表达式和

Ø名称表达式等。

名称表达式是由圆括号括起来的一个字符表达式,该表达式也可以是单个变量或数组元素。

Ø宏替换:

在使用宏替换时,将连字符(&)放在变量前,告诉VFP将此变量值当作名称使用,并使用一个点符号(.)来结束这个宏替换表达式。

空值:

等价于没有任何值;与0、空字符串(””)及空格不同;排序优先于其他数据。

NULL值不是一种数据类型。

第3章数据库与表的创建及使用复习要点P67

数据库的设计:

确定数据库,进行需求分析;确定需要的表;确定表中的字段;确定表之间的关系等。

关系的种类

(1)一对一关系

设有甲乙两张表,如果甲表的一个记录在乙表中有且仅有一个相应记录,而乙表中的一个记录在甲表中也有且仅有一个记录与之对应,则这两张表之间的关系为“一对一关系”。

(2)一对多关系

设有甲乙两张表,如果甲表中的任意一个记录在乙表中都有几个记录与之对应,而乙表中的每个记录在甲表中仅有一个记录与之对应,则称甲乙两张表之间存在一对多关系,并称甲表为“一表”(或“主表”、“父表”),乙表为“多表”(或“子表”)。

(3)多对多关系

设有甲乙两张表,如果甲表中的任意一个记录在乙表中存在多个记录与之对应,而乙表中的每个记录在甲表中也存在多个记录与之对应,则称甲乙两张表之间存在多对多关系。

遇到“多对多”的情况时,必须建立第三张表,把多对多的关系分解成两个一对多关系。

因为这第三张表在两表之间起着纽带的作用,因此称为“纽带表”(JunctionTable)。

在纽带表中,存储了两张表的主关键字数据。

成绩表是学生表与课程表之间的纽带表。

有关数据库的总体要求:

P71

创建数据库;

数据库的组成(表、视图、连接、存储过程);

数据库的使用:

打开;设置当前数据库;关闭;

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

当前位置:首页 > 总结汇报 > 学习总结

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

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