VisualFoxPro6.0基础.ppt

上传人:牧羊曲112 文档编号:6523100 上传时间:2023-11-08 格式:PPT 页数:141 大小:561.50KB
返回 下载 相关 举报
VisualFoxPro6.0基础.ppt_第1页
第1页 / 共141页
VisualFoxPro6.0基础.ppt_第2页
第2页 / 共141页
VisualFoxPro6.0基础.ppt_第3页
第3页 / 共141页
VisualFoxPro6.0基础.ppt_第4页
第4页 / 共141页
VisualFoxPro6.0基础.ppt_第5页
第5页 / 共141页
点击查看更多>>
资源描述

《VisualFoxPro6.0基础.ppt》由会员分享,可在线阅读,更多相关《VisualFoxPro6.0基础.ppt(141页珍藏版)》请在三一办公上搜索。

1、第二章 Visual FoxPro基础,本章主要内容2.1 Visual FoxPro概述2.2 VFP 6.0的数据类型 2.3 VFP 6.0的常量与变量 2.4 运算符与表达式2.5 常用标准函数,2.1 Visual FoxPro概述,微机关系数据库系统的发展 Visual FoxPro 6.0的功能与性能指标VFP 6.0的运行环境、安装、启动与退出 中文VFP开发环境简介VFP项目管理器 VFP向导、设计器与生成器,2.1.1微机关系数据库系统的发展,发展总过程:DBaseFoxbaseFoxproVisual FoxproDbase:Ashton Tate公司(80年代初期)Fo

2、xbase:Fox公司(1986)Foxpro 1.0:Fox公司(1989)1992年Fox公司被微软收购Foxpro 2.5:微软(1993)Visual Foxpro 3.0:微软(1995)Visual Foxpro 6.0:微软(1998)Visual Foxpro 9.0:微软对Visual FoxPro 9的支持将提供到2015年,2.1.2 VFP 6.0的功能与性能指标,一、VFP主要功能(1)快速创建应用程序(通过向导、生成器、工具栏和设计器)(2)功能更为强大(支持面向过程和面向对象编程)(3)开发客户机/服务器模式(C/S)的应用(4)与其他应用程序的数据共享(5)灵活

3、方便的调试手段(程序调试器),二、VFP的主要性能指标,2.1.3 VFP 6.0的运行环境、安装、启动与退出,一、运行环境操作系统:Windows95/98(中文版)或Windows NT 4.0(中文版)或更高版本 浏览器:IE4.0或更高版本 CPU:80486 66MHz以上内存:16M以上硬盘:典型安装85MB,最大安装90MB其他:鼠标和光驱等,2.1.3 VFP 6.0的运行环境、安装、启动与退出,二、安装 将VFP6.0 安装盘CD-ROM放入光驱找到序列号文件(若需要)找到setup.exe,双击安装安装过程根据提示选择或选择下一步,直到完成。,2.1.3 VFP 6.0的运

4、行环境、安装、启动与退出,三、启动方法一:“开始”“所有程序”“Microsoft Visual FoxPro 6.0”方法二:双击桌面上的快捷方式(如果有)方法三:单击任务栏中的快捷方式(如果有),2.1.3 VFP 6.0的运行环境、安装、启动与退出,四、退出方法一:从“文件”下拉菜单中选择“退出”选项。方法二:用鼠标单击VFP系统窗口右上角的“”关闭窗口图标。方法三:在VFP的命令窗口中键入Quit命令,再按Enter键。方法四:单击VFP主窗口左上方的狐狸图标,从弹出的下拉菜单中选择“关闭”,或按Alt+F4组合键。,2.1.4 中文VFP开发环境简介,一、Visual FoxPro

5、6.0窗口,标题栏,菜单栏,常用工具栏,工作区,状态栏,命令窗口,调色板工具栏,布局工具栏,命令窗口的显示/隐藏,2.1.4 中文VFP开发环境简介,二、VFP环境配置 对VFP运行环境进行配置,包括主窗口标题、默认目录、项目、编辑器、调试器及表单工具选项、临时文件存储位置等.,配置,临时配置(SET命令,退出VFP6.0 时从内存中释放),永久配置(修改配置文件(.FPW)和Foxuser.dbf文件,每次启动VFP6.0时自动装载),2.1.4 中文VFP开发环境简介,1、VFP配置文件 是一个文本文件(.FPW,默认Config.fpw)作用:VFP启动时会自动查找配置文件,并根据该配置

6、文件进行环境设定 内容:语句格式:=其中可以包括如下几种:SET命令对象;系统变量;COMMAND关键字。用以指定启动时的执行命令或要调用的函数;只有在配置文件中使用的关键字。,2.1.4 中文VFP开发环境简介,1、VFP配置文件例子:用编辑软件建立配置文件MYAPP.FPW,包括如下语句:TALK=OFF&关闭了VFP的交互会话特性_SCREEN.Caption=人事管理系统&VFP应用系统主窗口的标题设为“人事管理系统”MVCOUNT=2048&设置 VFP中变量的最大数目是2048COMMAND=DO Myapp.APP&在Visual FoxPro启动时执行Myapp.APP。注意:

7、COMMAND命令只能用于配置文件的最后一行。,2.1.4 中文VFP开发环境简介,2、VFP资源文件(Foxuser.dbf)由VFP维护的一个数据表文件 它保存了VFP退出时的状态 该文件记录了命令窗口的位置及大小、当前键盘宏、显示哪些工具栏等。用户可以在应用程序需要时读取甚至更改该资源文件。,2.1.4 中文VFP开发环境简介,三、通过“选项”对话框设置环境 位置:“工具”菜单下的“选项”对话框,2.1.4 中文VFP开发环境简介,1、设置日期和时间格式区域选项卡,年月日、月日年、日月年等,/-.等,年份是两位还是四位,时间是12还是24小时制,时间是否显示秒数,2.1.4 中文VFP开

8、发环境简介,2、设置货币符号和数字格式-区域选项卡,设定运算中小数位数,设定货币符号,货币符号在数字前还是后,设定千位分隔符号,2.1.4 中文VFP开发环境简介,3、设置默认工作目录-文件位置选项卡 作用:将自己的文件保存在设定的默认目录中,临时设置,永久设置,2.1.4 中文VFP开发环境简介,注1:大多数选项都可以通过SET命令进行设置如:设置日期分隔符等同于命令:SET MARK TO 日期分隔 设置默认目录等同于命令:SET DEFAULT TO 文件路径注2:SET命令设置与选项对话框的相应取值同步变化注3:利用DISPLAY STATUS或者LIST STATUS命令可以显示系统

9、的全部环境设置注4:通过SET命令修改环境变量只在当前工作期有效,属于临时设置。,2.1.4 中文VFP开发环境简介,四、VFP的三种工作方式(1)菜单工作方式:选择需要的菜单(2)命令工作方式:在命令窗口中输入命令(3)程序工作方式:编写程序 文件,2.1.4 中文VFP开发环境简介,五、VFP命令的格式(1)语法书写规则 必须以一个命令动词开头,大小写字母等效。命令动词和子句中的短语可用其前四个或四个以上字符的缩写表示。大多数命令动词后可以跟一个或多个限定该动词的子句。命令行中的各个子句可以按任意次序排列。命令行中如果有多个词就以一个或多个空格隔开 一个命令行的最大长度不能超过254个字符

10、。一行只能写一条命令,每条命令的结束标志是按回车键。如果一个命令太长,一行写不下,可以使用续行符“;”,然后回车,并在下一行接着书写该命令。但总长不能超过254个字符。所有命令,一律在英文输入状态下进行。标点符号均用英文,否则系统提示:“命令中含有不能识别的短语或关键字”。,2.1.4 中文VFP开发环境简介,六、VFP的系统帮助获得帮助的前提:安装了MSDN后获得帮助的方法:单击主菜单的“帮助”菜单下的“Microsoft Visual Foxpro 帮助主题”项,或者按功能键F1,就会出现MSDN帮助窗口。,2.1.4 中文VFP开发环境简介,选择“目录”选项卡,左窗口选主题,右窗口显示相

11、应的信息,2.1.4 中文VFP开发环境简介,从“索引”选项卡的文本框中输入键入要查找内容的关键字,2.1.5 VFP项目管理器,项目管理器是一个项目集成管理的工具,它集成并管理所有与开发的应用系统有关的各种类型文件开发设计VFP数据库管理系统,一般是先利用项目管理器建立一个项目文件,然后在项目中建立数据库、数据表、查询文件、程序设计以及其他与数据库相关文件的设计。项目管理器的主要功能是建立、打开项目以及维护各类文件,包括建立、新增、删除、修改、浏览及执行文件等工作,2.1.5 VFP项目管理器,1项目的建立-菜单法第一步:“文件”菜单“新建”,启动“新建”对话框,或单击工具栏中的“新建”图标

12、,系统将弹出“新建”对话框选择“项目”选项。然后单击“新建文件”按钮,2.1.5 VFP项目管理器,第二步:在弹出的“新建”对话模式 中确定存放项目文件的路径,输入项目名称(默认名称为“项目1”),单击“保存”按钮,即可建立一个新项目。,2.1.5 VFP项目管理器,注:建立一项目文件后,VFP会在磁盘上产生两个相关的文件:一个是扩展名为.PJX的文件,此为项目文件,保存应用系统所包含各类文件的相关信息,另一个是扩展名为.PJT的文件,此为项目说明文件,保存项目文件的备注数据,2.1.5 VFP项目管理器,1项目的建立-向导法第一步:从“文件”菜单中,选择“新建”按钮,启动“新建”对话框,选择

13、“项目”选项。然后单击“向导”按钮,2.1.5 VFP项目管理器,1项目的建立-命令法在命令窗口中直接输入命令 CREATE PROJECT,2.1.5 VFP项目管理器,2打开一个已存在的项目 方法一:“文件”菜单“打开”选择项目名“确定”方法二:单击工具栏里“打开”图标选择项目名“确定”,2.1.5 VFP项目管理器,3项目管理器的窗口操作(1)移动位置或改变大小:拖动窗口标题可移动窗口位置,把鼠标移动到窗口边线可调整窗口大小。(2)设置窗口位置:一般项目管理器窗口是以浮动模式设置的,若拖动标题栏到系统工具栏下方,可以将项目管理器窗口放到工具栏上,若想还原,点击选项卡空白处,拖动到其他位置

14、即可。,2.1.5 VFP项目管理器,3项目管理器的窗口操作(3)设置折叠模式:单击右上方的折叠按钮(向上箭头),此窗口将折叠,向上箭头变成向下箭头。此时,单击任一选项卡,会自动在其下方列出相关文件的信息,再单击一次选项卡将消失。要还原为正常模式,单击右上方的向下箭头即可。,2.1.5 VFP项目管理器,3项目管理器的窗口操作(4)拖下选项卡:当项目管理器是折叠方式或位于工具栏时,可将任一选项卡拖下。例如利用鼠标按住“数据”选项卡,移动鼠标即可将数据选项卡变成独立的浮动窗口。原来选项卡名“数据”处变成灰色字,表示不能在此处选取该选项。若要回到原来的状态,可以单击数据选项卡右上方窗口关闭按钮,或

15、拖动标题栏回到原来的位置。,2.1.5 VFP项目管理器,3项目管理器的窗口操作(5)钉住浮动选项卡:当选项卡处在拖下状态时,单击该选项卡右上方的钉子按钮(钉子形状),可将此窗口保持在最上方,这样该选项卡就不会被Visual FoxPro的其他窗口所覆盖。再次单击钉子按钮则恢复为浮动选项卡状态。(6)折叠和展开:用户可以扩展或压缩某一类型文件的图标。如果某种类型的文件存在一个或多个,那么在其相应图标的左侧就会出现一个“+”,单击这个“+”可列出这种类型的所有文件,这就是展开图标,此时“+”将变成“”,单击这个“”可隐去文件列表,这就是折叠图标。,2.1.5 VFP项目管理器,“全部”、“数据”

16、、“文档”、“类”、“代码”和“其他”六个选项卡,六个命令按钮,4.项目管理器的组成,2.1.5 VFP项目管理器,4.项目管理器的组成-选项卡“全部”选项卡:该选项卡把“数据”、“文档”、“类”、“代码”和“其他”等五个选项卡的内容全部集中于此。“数据”选项卡:该选项卡主要用于显示和管理数据文件。包含的数据文件有:数据库、自由表、查询、连接、存储过程文件等。“文档”选项卡:该选项卡主要用于显示和管理文档。,2.1.5 VFP项目管理器,4.项目管理器的组成选项卡“类”选项卡:该选项卡主要用于显示和管理类库文件。“代码”选项卡:该选项卡主要用于显示和管理Visual FoxPro各种类型的程序

17、代码,包括三种程序:程序、API库和应用程序。“其他”选项卡:该选项卡主要用于管理菜单文件、文本文件和其他文件,如BMP图形文件,2.1.5 VFP项目管理器,4.项目管理器的组成-命令按钮“新建”按钮:用于建立新文件或新对象,新的对象类型为当前所选择的类型。“添加”按钮:用于加入已存在的文件。“修改”按钮:打开并允许修改选择的文件。,2.1.5 VFP项目管理器,4.项目管理器的组成-命令按钮“运行”按钮:此按钮用于运行所选定的查询、表单或程序。“移去”按钮:从项目中移去或删除所选定的文件或对象。首先选取要移去的文件,然后单击“移去”按钮,将出现“确认”对话框,在此对话框中,如果选择“移去”

18、,则将此选定文件从项目管理器中移去;如果选择“删除”,则该文件将从磁盘上删除;如果选择“取消”,将取消本次操作。,2.1.5 VFP项目管理器,4.项目管理器的组成-命令按钮“连编”按钮:重新构造一个项目,也可以构造一个可执行文件。创建Visual FoxPro应用程序时,可以每次只建立一部分模块。这种模块化构造应用程序的方式可以使我们在每完成一个模块后,就对其进行检验。在项目建立之后,可以为它添加数据库、表、报表和表单等。完成了所有的功能模块之后,就可以进行应用程序的编译了。,2.1.5 VFP项目管理器,5项目管理器的功能(1)项目文件的管理:包括文件的新建、添加、移去(或删除)、重命名等

19、工作。(2)文件的运行与修改:对于选中的可执行文件,在项目管理器中可以直接运行,也可以将它在相应的窗口中打开予以修改,或者进行浏览、预览等工作。,2.1.5 VFP项目管理器,5项目管理器的功能(3)程序调试和项目连编:项目管理器提供了完整的程序调试环境,可以对项目中的程序、表单等进行调试,排错和试运行。也可以对整个项目实施连编,形成可直接执行的应用程序,甚至形成可脱离VFP环境直接在Windows下运行的EXE程序。(4)对各种资源的管理:对项目中所用到的各种资源,如图片文件、图标文件、各种音频视频文件、所用到的各种类库文件等,可以自动或者人工注册到项目管理器中统一管理,以利于这些资源的有效

20、利用,对于将来应用程序的发布也非常有利。,2.1.6 VFP向导、设计器与生成器,1设计器 能够使用户轻松地创建高效的表、表单、数据库、查询、视图和报表等;还可以把用设计器创建的上述各项加进应用程序中。,2.1.6 VFP向导、设计器与生成器,2向导向导是一种交互式的实用程序,集简捷的操作和完善的功能于一体,能逐步帮助用户快速完成日常任务,。在用户使用“项目管理器”或从“文件”菜单创建某种类型的新文件时,用户可选择使用“向导”按钮来帮助创建该文件,也可从“工具”、“向导”弹出的子菜单中直接选择某种向导。,2.1.6 VFP向导、设计器与生成器,3生成器VFP 6.0生成器是一个方便易用的工具,

21、它简化了创建和修改表单、控件及数据库完整性约束等工作。每一个生成器都由一系列选项卡组成,它们允许用户访问并设置所选对象的属性。如同VFP向导一样,生成器也是简便、快捷、有效的。生成器根据用户对其问题的回答,自动地设置控件属性、生成表达式等。,2.2 VFP 6.0的数据类型,VFP提供了多种数据类型,这些数据类型可分为两大类:一类只适用于数据表中的字段另一类则不仅适用于字段,还适用于程序设计中要用到的内存变量和数组等。,2.2 VFP 6.0的数据类型,(1)字符型(Character)字符型(C型)数据可以包含任何可显示的字符、汉字和符号。在程序编制过程中,如果需要定义包含字母、数字、空格、

22、符号和标点的变量时,如职工的姓名、电话号码和邮政编码时,一般以字符型数据类型表示。字符型字段或变量的数据长度不能超过254个字节,每个字符占用一个字节,每个汉字占用两个字节。,2.2 VFP 6.0的数据类型,(2)数值型(Numeric)数值型(N型)用于表示数量,是由数字符号09以及小数点和正负号及E组成。数值型的长度不能超过20个字节,其中负号、小数点各占一位。N型值的取值范围在-0.9999999999E+19到+0.9999999999E+20之间。常用来存储成绩、工资、人数等。数值型固定占用8个字节。除了十进制数外,VFP6.0还支持十六进制数,如十进制数128可以表示为十六进制的

23、0 x80。,2.2 VFP 6.0的数据类型,(3)整型(Integer)整型(N型)用于对整数类数值的表示,仅适用于字段的定义。整型数据占用4个字节,而且是用二进制形式表示的,因此其取值介于-2147483647(即-231+1)到2147483647(即231-1)之间。因此比数值型数据占用的空间要少得多。,2.2 VFP 6.0的数据类型,(4)浮点型(Float)浮点型(N型)与数值型是完全等价的。它的设置主要考虑到FoxPro各版本的兼容处理。(5)双精度型(Double)双精度型(N型)能够提供更高的数值精度。Double型只用于字段的定义,固定占用8个字节(固定存储长度的浮点数

24、表示)。Double型不同于数值型,其小数点位置由输入的数据值来决定。,2.2 VFP 6.0的数据类型,(6)货币型(Currency)在VFP6.0中,一般使用货币型(Y型)数据表示货币,而不是使用数值型。如果货币型数据的小数位数超过四位,系统会自动对其进行舍入处理。系统默认的货币符号是“”,用户可以通过“Set Currency”语句设置货币符号。货币型数据的取值范围介于922337203685477.5808到922337203685477.5807之间,用8个字节存储。,2.2 VFP 6.0的数据类型,(7)日期型(Date)日期型(D型)数据主要用于表示没有时间显示的日期值。日期

25、型数据的存储格式为“yyyymmdd”,其中yyyy表示年,占4个字节,mm表示月,占2个字节,dd表示日,占用2个字节。日期格式和范围由“Set Date”、“Set Mark to”和“Set Century”命令确定。为了解决Y2K问题,VFP6.0还提供了“严格日期”格式,在这种格式下,日期型数据的有效范围为公元元年3月1日到公元9999年12月31日。,2.2 VFP 6.0的数据类型,(8)日期时间型(DateTime)日期时间型(T型)数据可以表示既包含时间又包含日期的数据,也可以表示只包含日期或只包含时间的数据,如果只包含了时间,系统将1899年12月30日作为默认日期,如果只

26、包含了日期,系统将午夜12点作为默认时间。时间格式可以由“Set Hours”、“Set Seconds”命令确定。同日期型一样,日期时间型固定占用8个字节存储。,2.2 VFP 6.0的数据类型,(9)逻辑型(Logical)逻辑型(L型)用于存储只有两个值的数据,是一种高效的存储方法,存入的值为真(.T.)和假(.F.)两种状态。逻辑型变量多用于程序分支设置。,2.2 VFP 6.0的数据类型,(10)备注型(Memo)备注型(M型)只适用于表中的字段,存储时,备注字段固定为4个字节,用来表示一个指向存储备注文件(.FPT)内容的指针。而实际的备注内容的多少只受限于内存可用空间。VFP的备

27、注可以包含任意的数据,只要适用于字符串的所有内容都可以写入备注中。一般来说,表中的备注型字段多用来存放简历、注释等内容。,2.2 VFP 6.0的数据类型,(11)通用型(General)通用型(G型)用于存储OLE对象,仅适用于表中的字段。在通用型字段中,包含了对OLE对象的引用。一个OLE对象的具体内容可以是一个电子表、一个字处理文档、一幅图片等,这些OLE对象是由相应的应用软件建立的。通用型字段实际存储的内容、类型和数据量取决于建立该OLE对象的服务器以及是采用链接还是嵌入方式载入OLE对象。,2.2 VFP 6.0的数据类型,(12)对象型(Object)对象型(O型)用于存储OLE对

28、象,仅适用于内存变量。与通用型字段相对应。(13)字符型(二进制)与字符类型相似,但若代码页改变时,其值并不会随之改变,而字符类型的数据则会改变。所谓代码页是指各国因为语系不同,必须使用不同的代码,当换成另一个代码时,VFP会自动转换成相应的语系,因此不需担心语系不同的问题,而二进制字符类型的数据并不随着代码页的改变而改变。(14)备注型(二进制)与字符类型(二进制)一样,当代码页改变时,其值不会随之改变。,2.3 VFP 6.0的常量与变量,2.3.1 常量2.3.2 内存变量2.3.3 数组2.3.4 字段变量,2.3.1 常量,常量是程序运行过程中保持不变的数据。1.字符型字符型常量是由

29、双引号、单引号或方括号括起的字符。如,ABC、1234、王小二等。2.数值型数值型常量是由数字09、小数点、正负号和E(科学计数法中指数的底10)组成的。例如128、0.234、-123.34、1.2E+5等都是数值型常量。其中1.2E+5是1.210的5次方在VFP中的表示方法。,2.3.1 常量,3.逻辑型逻辑型常量只有真和假两个值,通常用.T.或.Y.表示真,用.F.或.N.表示假,字母两侧的小圆点(用小数点表示)不能省略,字母大小写通用。4.货币型货币型常量是以“”作为前缀的数值,如12.35、1234.5678。,2.3.1 常量,5.日期型日期型常量是用大括号按一定格式括起的符合日

30、期规定的常量日期型及日期时间型数据的正确格式为yyyy-mm-dd hh:mm:ss a|p例如1999-11-23、/均是符合语法的日期型常量,其中后三个均表示值为空的日期型常量。,2.3.1 常量,6.日期时间型日期时间型常量也是用大括号定义,如1999-11-23 5:12:00P可以用“/:”符号表示值为空的日期时间型常量。日期时间型数据00:00:00AM与12:00:00AM相同,表示午夜,00:00:00PM和12:00:00PM相同,表示中午。,2.3.2 内存变量,内存变量是在内存中开辟的存放数据的临时工作单元,它独立于数据表而存在。内存变量名的命名规则是:由字母、汉字或下划

31、线开头,后跟字母、数字或下划线等,但总长度不超过254个字符。注意:内存变量名不要使用系统的保留字(系统中含有特定意义的文字,如命令、函数名等)。,2.3.2 内存变量,1简单变量的定义和赋值给简单变量赋值不需要事先定义,常用的命令有“”和“Store命令”。【格式一】内存变量名表达式【格式二】STORE 表达式 TO 内存变量名表【功能】格式一只能将表达式的值赋给一个内存变量,格式二则可以将表达式的值分别赋给若干个内存变量,各内存变量之间用逗号分开。,2.3.2 内存变量,【例2-1】在命令窗口中执行如下赋值命令STORE 0 TO a1,a2,a3&a1、a2、a3的值均为0s=3*52&

32、此时s的值为75,数据类型为数值型s=s+10&此时s的值为85,可见“=”不同于等号s=1234&此时s的值为1234,数据类型为字符型,2.3.2 内存变量,2内存变量的显示【格式】LIST|DISPLAY MEMORY LIKE TO PRINTER PROMPT|TO FILE【功能】显示当前已定义的内存变量名、作用范围、类型和值。说明:LIKE子句表示将选出与通配符相匹配的内存变量,有?和*两种,前者代表单个字符,后者代表一个或多个字符。,2.3.2 内存变量,例如,若要显示例2-1中建立的内存变量,执行命令LIST MEMORY LIKE?主窗口中显示下列内容:S Pub C“12

33、34”A1 Pub N 85(85.00000000)A2 Pub N 85(85.00000000)A3 Pub N 85(85.00000000),2.3.2 内存变量,【格式】LIST|DISPLAY MEMORY LIKE TO PRINTER PROMPT|TO FILE 说明(续):选项TO PRINTER 能将屏幕显示内容输出到打印机,使用PROMPT则能提供是否打印的提示窗口。选项TO FILE能将显示内容存入文件,文件的扩展名为.txt。LIST和DISPLAY的不同之处在于:当变量较多,一屏显示不下时,前者将滚屏显示,后者则可以分屏显示,按任意键后才能显示下一屏。,2.3.

34、2 内存变量,3内存变量的清除【格式一】CLEAR MEMORY【格式二】RELEASE ALL EXTENDED【格式三】RELEASE ALL LIKE|EXCEPT【功能】从内存清除指定的内存变量。说明:格式一清除所有内存变量,格式二在人机会话状态下的作用与格式一相同,如果出现在程序中,则应该加上短语EXTENDED,否则不能清除公共内存变量。格式三中,LIKE短语用于清除与通配符相匹配的内存变量,EXCEPT短语用于清除与通配符不相匹配的内存变量。,2.3.2 内存变量,例:RELEASE a1,a3&清除内存变量a1和a3RELEASE ALL LIKE A*&清除所有首字母为 A的

35、内存变量RELEASE ALL EXCEPT?b*&清除除第二 个字符为B以外的所有内存变量,2.3.2 内存变量,4变量的输出VFP提供的输出命令很多,这里只介绍基本输出命令?和?的使用。【格式一】?,【格式二】?,【功能】先计算表达式的值,再显示各值。格式一从下一行的第一列起显示,格式二则不换行显示。说明:1)表达式可以是常量、变量、函数或一般表达式。2)N型值的整数部分占10位,超出10位时按需分配,小数部分按需分配。3)C型值占用位数与串长相同,其他各类数据按定义的位数输出。,2.3.3 数组,数组是指一组有序数据的集合。用一个数组名标识这一组数据,而用下标来指示数组中元素的序号。例如

36、:a(1)=“04003”a(2)=“数学系”a(3)=“张小三”a(4)=“女”a(5)=1972.01.12a(6)=“硕士”a(7)=“教师”a(8)=.F.在这一组数据中,数组名是a,共有8个数组元素,每一个元素存放一个数据(可以不同类型),数组a存放了一个人的基本信息。,2.3.3 数组,1数组变量的定义【格式】DECLARE|DIMENSION(,),数组名2(数值表达式3,数值表达式4)【功能】用来定义一个或多个一维或二维数组变量。,2.3.3 数组,说明:命令动词DECLARE和DIMENSION的功能相同,二者只需选择其中之一。数组名的命名同简单变量。数组的维数由数值表达式个

37、数决定,若是一维数组,则只须一个数值表达式说明。一维数组的最大下标由数值表达式决定,二维数组由数值表达式和数值表达式决定,其中前者表示行数,后者表示列数,共有行数列数个元素。表示维数可以用圆括号,也可以用方括号 VFP系统只允许使用一维数组及二维数组。,2.3.3 数组,定义数组举例:DECLARE am(20),bm(10,3),cm2,5DIMENSION dm(12),2.3.3 数组,2数组元素的表示方法 为了标识各个数组元素,每个数组元素都用一个下标来表示。VFP提供了下标法和序号法访问数组元素。(1)一维数组元素的表示方法 一维数组元素按其下标排列。例如数组a(4),其各元素的下标

38、是:a(1)、a(2)、a(3)、a(4)。,2.3.3 数组,(2)二维数组各元素的表示方法 下标法:用行号和列号标识各元素。例如,若定义了数组D(3,3),则D(3,2)表示数组D中第3行第2列的元素。序号法:同一维数组一样,二维数组也可以按其下标大小排列。,(a)下标法(b)序号法,2.3.3 数组,3数组元素的赋值数组被定义了以后,系统为每一个数组元素赋了一个初值为.F.。若要改变数组元素的值,也可以使用赋值语句。可以给整个数组的各个元素赋同一个值(必须对数组名赋值),也可以给每一个元素赋不同的值(必须指定该元素的下标)。,2.3.3 数组,【例2-2】将数组ab的各元素都初始化为0,

39、将数组ba的两个元素分别赋3和4。DECLARE ab(3,3),ba(2)STORE 0 TO ab&或ab=0Ba(1)=3&注意一行只能有一个赋值语句Ba(2)=FoxPro&数组各个元素的数据类型可以不同,2.3.3 数组,数组是指一组有序数据的集合。用一个数组名标识这一组数据,而用下标来指示数组中元素的序号。例如:a(1)=“04003”,a(2)=“数学系”,a(3)=“张小三”,a(4)=“女”,a(5)=1972.01.12,a(6)=“硕士”,a(7)=“教师”,a(8)=.F.在这一组数据中,数组名是a,共有8个数组元素,每一个元素存放一个数据(可以不同类型),数组a存放了

40、一个人的基本信息。,2.3.4 字段变量,字段变量(又称字段名变量)是指数据库表文件中的某一字段,它的具体值是当前记录中该字段存放的数据。字段变量名可以使用字母、数字、下划线和汉字,但第一个字母必须是字母或汉字。在变量名中字母不区分大小写。例如name和NAME是同一个变量。字段变量的数据类型与该字段定义的类型一致,使用字段变量首先要有数据表并处于打开状态。,2.3.4 字段变量,注意,内存变量名最好不要与当前区当前打开的数据表字段变量同名。如果同名,系统将默认字段变量,若特指内存变量,可加上前缀“M-”或加“M.”表示内存变量名,以免冲突,例如“M-姓名”或“M.姓名”,2.3.4 字段变量

41、,【例2-3】内存变量和字段变量的访问。现有表文件“学生.dbf”,其结构如下:学生(学号C(6),姓名C(6),性别C(2),通过在命令窗口中输入如下命令来区别内存变量和字段变量的使用。USE 学生&打开表文件学生.dbfLIST&显示表文件学生.dbf的内容记录号 学号 姓名 性别 1 990001 王晓东 男 2 990002 李子清 男 3 990003 赵小芳 女 4 990004 何桦君 女GO 1&将表记录指针移动到第一条记录上姓名=“刘远征”&定义与字段变量同名的内存变量“姓名”,并赋值为“刘远征”?姓名,M.姓名&显示同名的字段变量和内存变量“姓名”的值&显示结果为:王晓东

42、刘远征,2.4 运算符与表达式,VFP中的变量(包括字段变量、内存变量)、数组元素、常量、函数以及通过运算符将它们组合而成的有意义的式子,就是表达式。每个表达式都有一定的数据类型,VFP中的表达式主要有:算术表达式、字符表达式、日期时间表达式、逻辑表达式和关系表达式。,2.4 运算符与表达式,2.4.1 算术运算符及表达式2.4.2 字符串运算符及表达式 2.4.3 日期时间运算符及表达式 2.4.4 关系运算符及表达式2.4.5 逻辑运算符及表达式 2.4.6 宏替换,2.4.1 算术运算符及表达式,算术表达式又称为数值表达式,是由算术运算符将数值型的常量、变量和函数连接起来形成的表达式,其

43、运算结果是数值型数据。算术运算符及其含义如下表所示,2.4.1 算术运算符及表达式,算术运算符的优先级如表从高到底排列,同一级别的运算符按自左向右相结合的顺序运算。求余运算和MOD()函数的作用相同,其结果的正负号与除数一致。例如,求下列表达式的值:?15%4,15%-4,-15%-4,-15%4结果是:3-1-3 1,2.4.2 字符串运算符及表达式,字符表达式是由字符串运算符将字符型数据连接起来形成的表达式,其运算结果为字符型数据。字符串运算符及其含义如下表所示。,注:字符串运算符的优先级相同,2.4.3 日期时间运算符及表达式,日期时间运算符是对日期或日期时间型数据进行运算的运算符。日期

44、时间运算符也有两个:“+”和“-”,它们的运算优先级相同,但与字符串运算符的含义不同,如下表所示。,2.4.3 日期时间运算符及表达式,2.4.3 日期时间运算符及表达式,几种运算规则:日期型数据与数值N相加的结果是N天后的日期日期型数据与数值N相减的结果是N天前的日期两个日期型数据相减的结果是相差的天数。日期时间型数据与数值N相加的结果是N秒后的日期时间日期时间型数据与数值N相减结果为N秒前的日期时间。,2.4.4 关系运算符及表达式,关系表达式也称为简单逻辑表达式,它是由关系运算符将两个运算对象连接起来形成的表达式,其运算结果为逻辑型数据。关系运算符的优先级相同,其含义如下表所示。,2.4

45、.4 关系运算符及表达式,2.4.4 关系运算符及表达式,说明:(1)除日期型和日期时间型数据、数值型和货币型数据可以比较之外,其他情况下前后两个运算对象的数据类型要一致。(2)=和$运算符只适用于字符型数据。=表示当左右两个字符串必须完全相同结果才为.T.,否则为.F.。$表示当左字符串是右字符串的一个子字符串时,结果才为.T.,否则为.F.。,2.4.4 关系运算符及表达式,(3)大小比较规则:对日期/日期时间型数据的比较,规则是越晚的日期/日期时间越大;对逻辑型数据的比较,规则是.T.大于.F.;对字符型数据的比较,是自左向右逐个对比相应位置的字符,一旦发现不同的字符,就由这两个字符的大

46、小决定两个字符型数据的大小 注:字符顺序的大小可以有三种次序:Machine(机器)次序、PinYin(拼音)次序和Stroke(笔画)次序。1)Machine次序中西文字符由小到大的顺序是:空格、大写字母、小写字母,汉字按拼音顺序决定大小;2)PinYin次序中西文字符由小到大的顺序是:空格、小写字母、大写字母,汉字按拼音顺序决定大小;3)Stroke次序中字符的大小由笔画多少决定。,2.4.4 关系运算符及表达式,(4)“=”运算符在进行字符串比较运算时,其结果受命令SET EXACT ON|OFF(系统的默认值为OFF)影响:a)当处于OFF状态时,比较时以“=”右侧的字符串为准,只要右

47、侧的字符串与左侧字符串的前面部分内容相匹配,系统即认为两者相等,比较结果为.T.;b)当处于ON状态时,将会在较短的字符串尾部增加若干个空格,使两个字符串等长后再比较。注:SET EXACT ON|OFF命令对“=”运算没有影响。,2.4.4 关系运算符及表达式,【例2-4】SET EXACT命令对字符串用“=”进行比较的影响。SET EXACT OFF&系统默认,以右串为结束标志A1=FoxProA2=FoxPro A3=FoxPro教材?A1=A2,A2=A1,A1=A3,A3=A1,A2=A3,A3=A2&结果为.F.T.F.T.F.F.SET EXACT ON?A1=A2,A2=A1,

48、A1=A3,A3=A1,A2=A3,A3=A2&结果为.T.T.F.F.F.F.,2.4.5 逻辑运算符及表达式,逻辑表达式由逻辑运算符将逻辑型数据连接起来形成的表达式,其运算结果为逻辑型数据。,逻辑运算符按优先级从高到低为:NOT或!、AND和OR,2.4.5 逻辑运算符及表达式,逻辑表达的运算规则如下表所示,各类运算符的优先级,当不同类型的运算符出现在同一表达式中时,它们也有优先级其顺序由高到低为:算术运算符、字符串运算符、日期时间运算符,关系运算符,逻辑运算符。括号运算符“()”是所有运算符中优先级最高的,即圆括号能改变表达式的运算顺序,有括号的先算括号里面的。,各类运算符的优先级,各类

49、运算符混合运算举例,2.4.6 宏替换,存入内存变量或数组元素中的数据,可以利用宏替换进行处理。VFP中的宏替换的形式是:&.。其中代表字符型内存变量,圆点字符(.)指示宏替换的结束。当VFP进行宏替换处理时,将使用要替换的变量中的内容来代换“&”及这个变量名和圆点符。例如,执行下面的命令 a1=Fox?Visual&a1.Pro&显示字符串“Visual FoxPro”,2.4.6 宏替换,宏替换的用途很广,可以在任何能接受字符串的命令或函数中使用。可以把一些频繁重复使用的表达式或命令行先存到一个内存变量中,然后在需要该表达式或命令行的位置上写上&.即可。例如,在命令窗口中依次输入下列命令:

50、m=2 n=3 k=m+n?&k&结果为5,2.5 常用标准函数,2.5.1 数值函数 2.5.2 字符函数2.5.3 日期和时间函数2.5.4 数据类型转换函数2.5.5 测试函数,2.5 常用标准函数,函数的一般形式是:函数名(参数1,参数2,具有有函数名、参数和函数值3个要素 1)函数名起标识作用 2)参数是函数计算时的自变量,一般是表达式,写在括号内,有的函数不需要 3)函数运算后会返回一个值,称为函数值。函数是有数据类型的,函数值的数据类型就是函数的数据类型。,2.5.1 数值函数,(1)绝对值函数【格式】ABS()【功能】返回的绝对值。(2)平方根函数【格式】SQRT()【功能】返

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号