VF整理知识点.docx

上传人:b****6 文档编号:7529097 上传时间:2023-01-24 格式:DOCX 页数:31 大小:75.67KB
下载 相关 举报
VF整理知识点.docx_第1页
第1页 / 共31页
VF整理知识点.docx_第2页
第2页 / 共31页
VF整理知识点.docx_第3页
第3页 / 共31页
VF整理知识点.docx_第4页
第4页 / 共31页
VF整理知识点.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

VF整理知识点.docx

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

VF整理知识点.docx

VF整理知识点

Esofte(软)计算机二级VisualFoxPro数据库程序设计

——知识点整理资料

文件扩展名及备注文件扩展名

文件

扩展名

备注扩展名

文件

扩展名

备注扩展名

项目

.pjx

.pjt

数据库存

.dbc

.dbt

.dbf

.fpt

表单

.scx

.sct

程序

.prg

报表

.frx

单索引

.idx

结构化复合索引

.cdx

菜单定义格式

.mnx

菜单程序

.mpr

查询

.qpr

视图

.vcx

文本文件

.txt

可执行程序

.exe

应用程序

.app

第一章数据库基础知识

1.数据处理是指将数据转换成信息的过程。

2.数据处理的中心问题是数据管理。

数据管理经历了

人工管理阶段

文件系统阶段

数据库系统阶段在

阶段存在大量数据冗余,即程序与程序之间存在大量的数据重复,数据的大量重复会造成数据不一致,指值的不一致,不是类型的不一致。

3.数据库阶段的特点:

提高了数据共享性、减少冗余度、提高数据的一致性和完整性、提高了数据与程序的独立性、减少应用程序的开发和维护代价。

4.数据库管理系统DBMS;数据库应用系统DBAS;数据库系统DBS;数据DB数据库管理员DBA;DBS包括DBMS和DB

5.数据模型(指描述数据及关系的一种方法)面向对象不同可以分为

概念模型(E-R模型也叫实体联系模型:

实体用矩形表示,属性用椭圆表示,联系用菱形表示)

逻辑模型

物理模型

6.关系:

一个关系就是一张二维表,每个关系有一个关系名,一个关系存储为一个文件,称为表,扩展名.dbf。

7.元组:

在二维表中,每一行是一个元组,即一条具体记录。

属性:

二维表中垂直的列为属性,即表的字段名。

8.域:

属性的取值范围。

9.关键字:

属性或属性的组合,关键字的值能够惟一标识一个元组。

(主关键字和候选关键字就起惟一标识一个元组的作用)

10.外部关键字:

如果表中的一个字段不是本表总的主关键字或候选关键字,而是另外一个表中的主关键字或候选关键字,这个字段就被称为外部关键字。

11.联系:

实体之间的对应关系为联系。

12.实体间的联系:

一对一,一对多,多对多

13.数据库中的数据模型:

网状模型、层次模型、关系模型

14.vfp采用的是关系模型。

15.关系:

表关系名:

表名属性:

字段元组:

记录

行:

记录,元组列:

字段,属性

16.传统的集合运算:

并、差、交

17.专门的关系运算:

选择(水平方向)for,while,where

投影(垂直方向)fields,select

联接(一对一,一对多,多对多)

18.项目:

是指文件、数据、文档、和对象的集合。

扩展名.pjx可以将应用系统编译成一个扩展名为.app的应用文件或.exe的可执行文件。

19.创建项目:

①通过菜单创建

②命令:

CreateProject项目名

20.打开项目管理器:

①通过“文件”->“打开”菜单项

②命令:

ModifyProject项目名

21.项目管理选项卡:

①“全部”选项卡(以下五项的全部内容)

②“数据”选项卡(数据库、自由表、查询、视图)

③“文档”选项卡(表单、报表、标签)

④“类”选项(使用基类可以创建一个面向对象的驱动器)

⑤“代码”选项卡(.prg的程序文件、函数库APILibraries和.app应用程序)⑥“其他”选项卡(文本文件、菜单文件、位图文件.bmp、图标文件.ico)

第二章数据与数据运算

1、字段数据类型(11种)

字符型

C

双精度型

B

数值型

N

整型

I(4)

逻辑型

L

(1)

货币型

Y(8)

日期型

D(8)

备注型

M(4)

时间型

T(8)

通用型

G(4)

浮点(动)型

F

*N包括Y、F、B、I

*数值型由数字0-9、小数点、正负号构成。

*字符型用半角的单引号、双引号、方括号把字符串起来,1个汉字占2个字节,不包含任何字符的串叫空串。

空串与包含空格的字符串不同。

*日期型有严格的日期格式和传统的日期格式,常用的分隔符有斜杠(/)连字符(-)句点(.)和空格。

严格的日期格式{^yyyy-mm-dd}必须{^},年份4位,年月日不能颠倒。

setmarkto“-”则用指定的分隔符

setmarkto系统默认的斜杠分隔符

setcenturyon设置4位数字年份

setcenturyoff设置2位数字年份

setdatetoymd设置年月日格式

*逻辑型用.t..f.或.y..n.表示。

2、变量:

变量值能够随时改变的。

变量名以字母、汉字和下划线开头,后接字母、数字、汉字和下划线构成

3、变量的分类:

字段变量和内存变量(简单内存变量和数组)

当内存变量与字段变量同名时,通过M.或M->访问内存变量,例如M.姓名。

4.数组:

是内存中连续的一片存储区域,由一系列元素组成,每个数组元素相当于一个简单变量,可以给各元素分别赋值。

数组在使用前用dimension或declare命令指定是1维数组、2维数组、数组名和数组大小,数组大小由下标值的上下限决定,下限规定为1.数组创建后,系统自动给每个数组元素赋以逻辑假.f.。

例如:

dimensionx(5),y(2,3)

一维数组x含5个元素:

x

(1),x

(2),…x(5)

二维数组y含6个元素:

y(1,1),y(1,2),y(1,3),y(2,1),y(2,2),y(2,3)。

x=1000,将同一个值赋给所有的元素。

?

x指显示第一个数组元素。

数组名不能与简单变量名重复。

在赋值语句中的表达式位置不能出现数组名。

可用一维数组形式访问二维数组。

数组y可依次表示为:

y

(1),y

(2),…y(6),其中y(4)与y(2,1)是同一变量。

举例说明:

a=8&定义一个内存变量a

dimensiona(4),b(2,3)&该命令执行后,数组a,b中的所有元素的初值都为.F.&内存变量名与数组变量名重复,以后看到a,都应把它当成是数组变量

store10toa与a=10等价&数组a中的所有元素值都为10

b(1,1)=30

b(1,2)=“计算机”

b(3)=.F.

5.显示内存表达式的值?

换行输出?

?

不换行输出

6.数值表达式:

**或^乘方运算%求余运算

7.字符表达式,日期表达式:

+-

8.子串包含测试:

$不等于:

<>、#或!

=

9.字符串精确比较

“==”两个字符完全相同.T.

“=”setexacton|off

10.优先级顺序:

notandor,*/优先于+-

11.常用的函数

一、数值函数

求绝对值函数:

ABS(数值表达式)如:

ABS(-100)的值是100

符号函数:

SIGN(数值表达式)它的值只有1、0、-1。

如SIGN(-100)的值是-1;SIGN(78)的值是1.SIGN(0)的值是0.

求平方根函数:

SQRT(数值表达式)如SQRT(16)的值是4.

圆周率函数:

PI()它的值是3.14

求整数函数:

INT(数值表达式)取整函数。

如INT(8.9)的值是8。

CEILING(数值表达式)返回大于或等于指定数值的最小整数。

如:

CEILING(8.9)的值是9;CEILING(-8.9)的值是-8。

FLOOR(数值表达式)返回小于或等于指定数值的最大整数。

如:

FLOOR(8.9)的值是8;FLOOR(-8.9)的值是-9。

四舍五入函数:

ROUND(数值表达式1,数值表达式2)如:

ROUND(37.4567,2)的结果是37.46

求余函数:

MOD(数值表达式1,数值表达式2)返回两个数值相除后的余数。

如:

MOD(10,3)的结果是1;MOD(10,-3)的结果是-2。

注:

余数的正负号与除数相同

求最大值和最小值函数:

MAX(,,,…)计算各自变量表达式的值,并返回其中的最大值。

MIN(,,,…)计算各自变量表达式的值,并返回其中的最小值。

注:

自变量表达式的值可以是任何类型的,但所有表达式的类型必须一致。

二、字符函数

求字符串长度函数:

LEN(字符表达式)如:

LEN(“努力过visualfox”)的结果是17.

注:

一个汉字占两个字符。

大小写转换函数:

LOWER(字符表达式)大写转小写如:

LOWER(“ABC”)结果是abc.

UPPER(字符表达式)小写转大写如:

LOWER(“abc”)结果是ABC.

空格生成函数:

SPACE(数值表达式)如:

SPACE(5)结果就是5个空格。

删除前后空格函数:

TRIM(字符表达式)去掉尾部空格。

如:

TRIM(“abc”)结果是“abc”

LTRIM(字符表达式)去掉首部空格。

如:

TRIM(“abc”)结果是“abc”

ALLTRIM(字符表达式)去掉首部和尾部空格。

如:

TRIM(“abc”)结果是“abc”

取子串函数:

LEFT(字符表达式,长度)从左边截取字符串。

如:

LEFT(”ABCDE”,2)的结果是”AB”

RIGHT(字符表达式,长度)从右边截取字符串。

如:

RIGHT(”ABCDE”,2)的结果是”DE”

SUBSTR(字符表达式,起始位置,长度)截取字符串。

如:

SUBSTR(”ABCDE”,2)结果是”BCDE”

SUBSTR(”ABCDE”,2,3)结果是”BCD”

计算子串出现次数函数:

OCCURS(字符表达式1,字符表达式2)

如:

OCCURS(”A”,”DBABCADA”)的结果是3.

求子串位置函数:

AT(字符表达式1,字符表达式2)

如:

AT(”A”,”DSADD”)的结果是3

子串替换函数:

STUFF(字符表达式1,起始位置,长度,字符表达式2)

如:

STUFF(”GOODBYE”,6,3,”MORNING”)

结果是GOODMORNING

字符替换函数:

CHRTRAN(字符表达式1,字符表达式2,字符表达式3)

如:

CHRTRAN(”大家好”,”大家”,”您”)结果是您好

字符串匹配函数:

LIKE(字符表达式1,字符表达式2)

如:

LIKE(”AB*”,”ABCD”)结果就为真.

注意:

通配符只能出现在第一个字符表达式中。

三、日期和时间函数

系统日期和时间函数:

DATE()系统日期

TIME()系统时间注意:

TIME()是字符型的。

DATETIME()系统日期时间。

年份函数:

YEAR(日期表达式)如:

YEAR({^2009/09/19})结果是2009

四、数据类型转换函数

数值转换字符函数:

STR(数值表达式)如:

STR(100)结果就是字符型的100

字符转换数值函数:

VAL(字符表达式)如:

VAL(”100”)结果就数值型的100

字符串转换成日期:

CTOD(字符表达式)

字符串转换成日期时间:

CTOT(字符表达式)

日期转换成字符:

DTOC(日期表达式)

日期时间转换成字符:

TTOC(日期时间表达式)

宏替换函数:

&字符型变量如:

a=”10”?

1+&a的结果就是11。

五、测试函数:

值域测试函数:

BETWEEN(表达式1,表达式2,表达式3)判断第一个表达式是否在第二个表达式和第三表达式之间,如果是就返回真,否则返回假。

`

空值测试函数:

ISNULL(表达式)判断表达式是否为NULL是则返回真,否则返回假。

“空”值测试函数:

EMPTY(表达式)如是表达式是空格、0、.f.则返回真,否则返回假。

数据类型测试函数:

VARTYPE(表达式)判断表达式返回的类型。

表尾测试函数:

EOF()

表首测试函数:

BOF()

记录号测试函数:

RECNO()

条件测试函数:

IIF(逻辑表达式,表达式1,表达式2)当逻辑表达式为真是,做表达式1,否则做表达式2。

如:

IIF(5>8,5+8,6-3)结果是3

程序设计基础

1、概念:

是命令的集合,分行存储在磁盘上,按照人为的顺序依次输出的过程。

2、建立、修改程序文件(.prg):

modifycommand程序名

3、远行:

do程序文件名

4、基本的输入语句:

(以求圆的面积为例)

①input“请输入圆的半径”tor

可接受的数据类型:

C、N、L、D、T;从键盘上接受输入,但不能不输入任何内容;输入字符常量必须加定界符

②accept“请输入圆的半径”tor

只能接受字符串,输入是不需要加定界符

③wait“请等候…”window

wait<提示信息>to<内存变量>

5、程序的结构:

顺序结构

选择结构(分支、判断)

循环结构(条件、步长)

6、程序的控制语、注释语

①exit终止,跳出,至enddo后面

②loop中止,跳至dowhile判断条件

③quit退出系统

④*换行注释

⑤&&同行注释

注释语句

【格式1】NOTE<注释内容>

【格式2】*<注释内容>

【格式3】&&<注释内容>

7、程序的模块,形参、实参

形式参数定义:

PARAMETERS<形参>

参数传递:

格式一:

do文件名或过程名with实参

格式二:

文件名或过程名(实参)

8、变量的作用域:

①全局变量(又称公共变量)(public):

可在任何模块和程序中使用,而且在VF运行环境内都一直可见(命令窗口输入的也是)

②私有变量(private):

在建立该变量的模块及其下属各层模块中使用,在其上层模块中不可用;在程序中直接使用没有特别声明的变量都是私有变量;用private声明上层模块中已经存在的变量,使得上层模块定义的变量在当前暂时无效

③局部变量(local):

只能在建立它的模块中使用,不能在上层或下层模块中使用

第三章数据库及其操作

1、创建数据库:

①在项目管理器中建立

②在菜单中建立

③命令:

Createdatabase数据库名

2、打开数据库:

OpenDatabase数据库名

3、删除数据库:

DeleteDatabase数据库名

4、修改数据库:

ModifyDatabase数据库名

5、关闭数据库:

CloseDatabase

6、打开表设计器:

ModifyStructure

7、显示全部表记录:

List(显示完全部记录)

8、显示当前表记录:

Display(分页显示记录)

9、记录的绝对定位:

Goto

10、浏览、修改表:

Browse

11、编辑、修改表:

Edit/Change

12、批量修改:

Replaceall字段with字段表达式

13、逻辑删除:

Delete(只在记录前加*,不删除)

14、恢复逻辑删除:

Recall

15、物理删除:

①Pack:

只删除带*的记录

②Zap:

物理删除表中全部记录

16、关闭表:

Use

17、打开表:

Use表名

18、复制表记录:

Use表名;Copyto新表名

19、复制表结构:

Use表名;CopyStructureto新表名

20、追加表记录:

①将另一表中的记录添加到该表中:

Use要追加记录的表名

Appendfrom有记录的表名

②在尾部追加记录:

Append

③在尾部增加一条空记录:

Appendblank

21、插入表记录:

①在当前记录的后面插入一条记录:

insertafter

②在当前记录的后面插入一条空记录:

insertblank

③在当前记录的前面插入一条记录:

insertbefore

22、显示所有含有条件的记录:

listfor

23、显示满足条件的记录:

listwhile

24、显示字段:

listfields

25、指针记录的定位:

①bof()为.T.时指向文件头

②gotop定位在第一条记录

③gobottom定位在最后一条记录

④eof()为.T.时指向文件尾

⑤skip向下移动一个指针,指向下一条记录(不含当前记录)

⑥all全部记录

⑦locatefor满足条件的第一条记录

⑧continue继续查找满足条件的下一条记录

用locate命令定位:

Locatefor条件查找满足条件的第一条记录

Continue继续查找满足条件的第一条记录

?

found测试是否有返回值,如有.T.,如无.F.

Display显示

26、记录的范围:

①nextn向下n条记录

②rest从指针指向位置开始的所有记录

27、在数据库关闭/删除的情况下建立的表为自由表,自由表字段名最长为10个字符。

28、在数据库打开/修改的情况下建立的表为数据库表,数据库表字段名最长为128个字符,可以为数据库表建立主索引、字段有效性和参照完整性,这也是自由表没有的。

29、创建数据库表:

opendatabase数据库名;creat表名

30、创建自由表:

确定当前没有打开数据库,使用命令:

creat表名

31、将自由表添加到数据库中:

opendatabase数据库名;addtable表名

32、将数据库表移出数据库:

opendatabase数据库名;removetable表名

******************************************************************

小结:

1、用use打开表时,记录号位于第一条记录

2、执行带all的命令,记录指针指向eof()=.T.

3、当为.T.时,bof的记录号总是为1,eof的记录号是记录数+1

4、空表的总记录是0,bof的记录号是1,eof的记录号是1

******************************************************************

33、排序:

①建立排序:

sorton字段名/a/d/cto新表名

②/a(asc):

升序;/d(desc):

降序;/c:

不区分字母大小写

34、索引:

①索引的种类:

主索引,候选索引,唯一索引,普通索引

②建立索引:

indexon关键字tag索引文件名

③打开索引:

setindexto索引文件名

④关闭索引:

setindexto

⑤查找索引:

find/seek

⑥删除索引:

deletetagall索引标识

⑦主控索引:

setorderto索引名

⑧建立永久链接的条件:

父表必须建立主索引,子表必须建立普通索引

⑨建立临时链接:

窗口->数据工作区

命令:

setrelationto父表字段名into子表名(父动子动)

举例:

opendatabase成绩管理

Usestudentin1order学号

Usescorein2order学号

Setrelationto学号into2/score

Select1/go3/display/select2/display

*********************************************************************

小结:

排序与索引的区别

1、排序要执行两次,按关键字和记录号,要打开表;而索引只执行一次,按关键字,不需要打开表;

2、排序生成一个新表,索引是针对原表生成一个指针文件

3、升降序的表示与书写方式不同:

排序/a升序/d降序/c不区分大小写,索引ascending和descending。

4、排序与索引的to的含义不同,排序的to表示到一个新表,索引的to表示建立单索引文件。

5、表达式的方式不同,排序用(,)逗号,索引用(+加号)

自由表与数据库表的不同:

1、自由表有三个索引:

候选索引、唯一索引、普通索引;

2、数据库表有四个索引:

主索引、候选索引、唯一索引、普通索引;

3、一个数据库表只能有一个主索引,可以有多个候选索引、唯一索引、普通索引;

4、一个表只属于一个数据库;

5、主索引和候选索引表示表记录的唯一性;

6、数据库表的字段允许长度是0~128个字符,而自由表只允许10个字符;

7、数据库表可以设置字段的有效性规则和参照完整性,而自由表不能;

8、可以将自由表添加到数据库中,也可将数据库表从数据库中移去成为自由表。

*********************************************************************

35、数据的完整性:

①实体完整性:

主索引和候选索引,保证记录的唯一性

②域完整性:

表示字段的有效性和取值范围

③参照完整性:

描述表与表之间的关系

参照完整性的规则:

更新规则(级联、限制、忽略)

删除规则(级联、限制、忽略)

插入规则(限制、忽略)

参照完整性是数据库文件的产物,要有联接,先打开数据,在父表建立主索引,子表建立普通索引,建立连线后先清理数据库,再编辑参照完整性。

36、工作区:

①工作区的选择:

select<工作区号>|<别名>

②范围:

1~32767默认0号工作区,也是最小工作区

③select0表示选定当前还未使用的编号最小工作区

第四章SQL语言

1、SQL:

structurequerylanguage

2、定义:

是结构化查询语言,是关系数据库的标准语言,是一种高度非过程化的语言,是数据库后台的操作语言,具有非常强大的查询功能,查询是它的核心。

3、基本构成:

select查询什么字段/from数据源/where查询条件

4、三大功能:

数据查询

①格式:

select字段名/*from表1innerjoin表2on表1主关键字=表2主关键字where筛选条件[groupby分组having分组条件]orderby排序

②函数

Max()

Min()

Avg()

Count()

Sum()

最大值

最小值

平均值

计数

求和

③值域查询:

between…and…

④空值查询:

isnull/isnotnull

⑤模糊查询:

like(like后所指定的字段值一定是个字符型数据;通配符%表示0个或多个字符,”_”只表示一个字符)

⑥使用量词和谓词的查询:

any/some/all

(some和any是同义词)

[not]exists

*some、any只有子查询中有一行能使结果为真,则结果为真

*all子查询中所有记录都使结果为真,则结果为真

*[not]exists用来检查是否有结果返回,即存在/不存在元组

⑦集合的并运算:

union字段相同,值域相同

⑧虚字段:

as新字段名

操作功能:

①插入:

insertinto表名(字段名)values(字段值)

②更新:

update表名set字段名=表达式where条件式

③删除:

deletefrom表名where条件

定义功能:

①表的定义:

createtable|d

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

当前位置:首页 > 经管营销 > 经济市场

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

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