visual-foxpro程序设计案例教程第2课时课件.ppt
第 1章 数据库基础知识(1.4-1.5)第2章 数据及其运算(2.1-2.2),主讲教师:,第 1章 数据库基础知识(1.4-1.5)第2章 数据及其,1.4 VP系统概述,1.4.1 VFP的发展过程 1、数据库的产生计算机管理数据随着计算机的发展而不断发展,利用计算机对数据进行处理经历了4个阶段。(1)人工管理阶段(2)文件系统阶段(3)数据库系统阶段(4)分布式数据库系统阶段,1.4 VP系统概述1.4.1 VFP的发展过程,2、VFP的发展过程主要经历了3个阶段。(1)DBase阶段(2)FoxBase 和 FoxPro阶段1989年,Fox software公司推出了Foxbase的升级换代产品FoxPro 1.0,它正是今天Visual FoxPro6.0的前身。(3) Visual FoxPro 阶段1995年微软公司推出了Visual FoxPro3.0版。1997年5月,推出了Visual FoxPro5.0中文版。1998年9月,推出了Visual FoxPro6.0中文版。由此可见,Visual FoxPro是Foxbase之后又一广泛使用的关系型数据库管理系统。,2、VFP的发展过程主要经历了3个阶段。,2、VFP的发展过程主要经历了3个阶段。(1)DBase阶段(2)FoxBase 和 FoxPro阶段1989年,Fox software公司推出了Foxbase的升级换代产品FoxPro 1.0,它正是今天Visual FoxPro6.0的前身。(3) Visual FoxPro 阶段1995年微软公司推出了Visual FoxPro3.0版。1997年5月,推出了Visual FoxPro5.0中文版。1998年9月,推出了Visual FoxPro6.0中文版。由此可见,Visual FoxPro是Foxbase之后又一广泛使用的关系型数据库管理系统。,2、VFP的发展过程主要经历了3个阶段。,1.4.2 VFP6.0的系统环境与安装,1 VFP6.0的系统环境(1)软件环境可以安装在以下操作系统或网络系统环境中:Windows98、Windows2000、WindowsXP。(2)硬件环境(1)基本配置(2)推荐配置CPU主频:800MHZ以上。内存:128MB以上。硬盘:2G以上。,1.4.2 VFP6.0的系统环境与安装1 VFP6.0的,2 VFP6.0的安装,1、在CD-ROM上安装 目前绝大多数的计算机都安装了CD-ROM驱动器,在CD-ROM上安装的操作步骤如下:(1)将CD插入CD-ROM驱动器。(2)在“资源管理器”的目录中,选择光驱,找到SETUP.EXE文件并运行它。(3)按照安装向导,选择安装形式并完成安装。(4)退出安装。,2 VFP6.0的安装1、在CD-ROM上安装,2、在网络上用CD-ROM安装 对于网络上的用户,可以实现资源共享,可以按照如下方法进行安装:(1)将CD插入与网络相连的工作站的任何共享的CD-ROM驱动器中。(2)在“资源管理器”的目录中,选择“映射网络驱动器”将CD-ROM进行映射。(3)在“资源管理器”的目录中,选择映射驱动器,找到SETUP.EXE文件并运行它。(4)按照安装向导,选择安装形式并完成安装。(5)退出安装,2、在网络上用CD-ROM安装,1.4.3 VFP6.0的启动和退出,1、在“开始”菜单中启动VFP在“开始”菜单中,启动VFP的操作步骤如下:(1)单击屏幕左下角的“开始”按钮,移动鼠标指针指向“程序”选项。(2)再把指针指向“Microsoft Visual FoxPro 6.0”,单击“Microsoft Visual FoxPro 6.0”选项,单击该选项后,可以启动VFP。,1.4.3 VFP6.0的启动和退出 1、在“开始”菜单中启,2、用快捷方式启动VFP为了方便地启动,可以在自己的桌面上建立启动快捷方式,其操作步骤如下:(1)在桌面上单击鼠标右键,选择快捷菜单中的“新建”,然后选择“快捷方式”。(2)在“创建快捷方式”对话框上,选择“浏览”命令按钮,然后在“浏览”窗口中,找到Visual FoxPro所在目录,找到VFP6.EXE文件,选择“打开”。(3)在“创建快捷方式”对话框中,选择“下一步”。(4)在“为程序选择标题”对话框中,输入用户所要的快捷方式的名称,然后单击“完成”。,2、用快捷方式启动VFP,2 VFP6.0的界面,主窗口是开发应用程序的起点,主要由标题栏、菜单栏、工具栏、状态栏和命令窗口组成。(1)标题栏:标题栏将显示目前所使用的系统是Microsoft Visual FoxPro。(2)菜单栏:菜单栏中可提供多种菜单,如“文件”、“编辑”、“显示”、“格式”、“工具”、“程序”、“窗口”和“帮助”等,应用程序的开发可在这些菜单中实现,每个菜单都有快捷键。,2 VFP6.0的界面主窗口是开发应用程序的起点,主要由标,(3)工具栏:工具栏由多个按钮组成,实际上就是下拉式菜单变成弹出式按钮。工具栏是应用程序开发过程中重要的工具,利用工具栏能够快速地访问常用的命令和功能。(4)命令窗口:在命令窗口中,可以输入VFP的各种命令和语句,同样也可以达到程序开发的目的。(5)状态栏:把当前最有用的信息告诉给用户。,(3)工具栏:工具栏由多个按钮组成,实际上就是下拉式菜单变成,3 VFP6.0的退出,退出VFP有以下几种方法:(1)在“命令”窗口中,输入“quit”命令,按回车键。(2)直接按Alt+F4键。(3)在“文件”菜单中,选择“退出”命令。(4)双击主窗口左上角的控制菜单。(5)在主窗口控制菜单中,选择“关闭”。,3 VFP6.0的退出退出VFP有以下几种方法:,4 VFP6.0的工作方式,VFP6.0的工作方式VFP6.0开发应用程序可以使用三种不同的方式,即向导方式、菜单方式及命令方式。,4 VFP6.0的工作方式VFP6.0的工作方式,1.4.5 VFP6.0的文件类型,VFP6.0文件组成VFP6.0一共提供了40多种文件类型,存储数据的数据库文件和存储程序的程序文件是VFP中两类最常见的文件。实际上使用VFP会创建很多种类型的文件,这些文件有着许多不同的格式,常用的文件类型有数据库、表、项目、表查询、视图、连接、报表、标签、程序、文本、表单、菜单等。表2.1列出了VFP6.0中常用的文件扩展名。,1.4.5 VFP6.0的文件类型VFP6.0文件组成,1.5 项目管理器,使用VFP 6.0时会创建很多文件,这些文件有着不同的格式,因此就需要专门的管理工具来提高工作效率。使用VFP 6.0的主要工作界面“项目管理器”,将VFP 6.0的文件用图示与分类的方式,依文件的性质放置在不同的标签上,并针对不同类型的文件提供不同的操作选项。,1.5 项目管理器使用VFP 6.0时会创建很多文件,这些,1.5.1 项目管理器简介“项目管理器”是 VFP 6.0 中处理数据和对象的主要组织工具,是 VFP 6.0 的“控制中心”。 项目是文件、数据、文档和 VFP 6.0 对象的集合,其保存文件带有 .pjx 扩展名。“项目管理器”采用可视化和自由导航,各项以类似大纲的视图形式组织,通过展开或折叠可以清楚地查看项目在不同层次上的详细内容。“项目管理器”提供简易、可见的方式组织处理表、表单、数据库、报表、查询和其他文件,用于管理表和数据库或创建应用程序。这样就可实现对应用程序文件的集中有效的管理。,1.5.1 项目管理器简介,1 项目管理器功能(1)采用“目录树”结构对资源信息进行集中管理。(2)以其集成环境为用户提供了快捷访问系统设计工具的窗口。在项目管理器窗口。(3)支持项目建立数据字典,用以存储各数据表间的关系。(4)支持与其他项目共享文件。(5)用最简单面向对象的方法,将其系统资源编译成可独立运行的.APP或.EXE文件。从项目管理器所具有的功能可以看出,项目管理器实际上就是VFP 6.0系统环境下的资源管理器。,1 项目管理器功能,2、项目管理器组成VFP6.0的“项目管理器”主要包括文件选项卡、分层结构视图和命令按钮三部分。(1)文件选项卡项目管理器有6个选项卡,分别是:“全部”、“数据”、“文档”、“类”、“代码”和“其他”,每个选项卡用于管理某一类型文件。(2)分层结构视图(3)命令按钮在项目管理器右边有6个命令按钮,即“新建”、“添加”、“修改”、“运行”或“打开”或“浏览”、“移去”及“连编” 。,2、项目管理器组成,1.5.2 使用项目管理器管理项目,在VFP 6.0中建立表、数据库、查询、表单、报表以及应用程序时,可以用项目管理器来组织和管理文件。1、创建项目(1)从“文件”菜单中选择“新建”命令,或单击常用工具栏上的“新建”按钮,弹出“新建”对话框。(2)单击单选钮中的“项目”后,再单击“新建文件”按钮,弹出“创建”对话框。(3)选择路径,输入新建的项目文件名,保存后完成项目的建立。,1.5.2 使用项目管理器管理项目在VFP 6.0中建立表,2、打开和关闭项目打开已有项目的操作步骤如下:(1)从“文件“菜单中,选择“打开”命令,或单击常用工具栏上的“打开”按扭,弹出“打开”对话框。(2)选择“文件类型”为“项目”类型,选择已有的项目文件,单击“确定”按钮。若要关闭项目,只需单击项目管理器右上角的“关闭”按钮即可。未包含任何文件的项目称为空项目。当关闭一个空项目时,VFP 6.0在屏幕上显示提示框。若单击提示框中的“删除”按钮,系统将从磁盘上删除该空项目文件;若单击提示框中的“保持”按钮,系统将保存该空项目文件。,2、打开和关闭项目,3、定制项目管理器 “项目管理器”是作为一个独立的窗口存在的。根据用户的不同需要,可以移动它的位置,改变它的大小与外观,也可以将它打开或折叠起来。(1)折叠“项目管理器”(2)还原“项目管理器”(3)拖开选项卡(4)还原选项卡(5)停放“项目管理器”,3、定制项目管理器,1.5.3 使用项目管理器操作文件,“项目管理器”为数据提供了一个组织良好的分层结构视图。若要处理项目中某一特定类型的文件或对象,可选择相应的选项卡。在建立表和数据库,以及创建表单、查询、视图和报表时,所要处理的主要是“数据”和“文档”选项卡中的内容。在“项目管理器”中,可以向项目中加入或移去已有的文件,也可以新建或修改文件。,1.5.3 使用项目管理器操作文件“项目管理器”为数据提供了,1、查看文件详细内容“项目管理器”中的项是以类似于大纲的结构来组织的,可以将其展开或折叠,以便查看不同层次中的详细内容。如果项目中具有一个以上同一类型的项,其类型符号旁边会出现一个 + 号。单击 + 号可以显示项目中该类型项的名称。若要折叠已展开的列表,可单击列表旁边的 - 号。,1、查看文件详细内容,2、创建文件(1)在“项目管理器”中,选择用户想要“新建”的文件类型,“如数据库”。(2)单击“项目管理器”中的“新建”按钮。(3)按照所出现的设计器类型“新建”文件。用户须注意从“文件”菜单中创建的文件不会自动包含在项目中,而使用“项目”菜单的“新建文件”命令(或使用“项目管理器”上的“新建”按钮)所创建的文件则自动包含在当前项目中。,2、创建文件,3、添加文件(1)在“项目管理器”中,选择用户要加入的文件类型,如“自由表”。(2)单击“项目管理器”中的“添加”按扭。(3)在“打开”对话框中,输入或选择要加入的文件名称。(4)在“打开”对话框中,单击“确定”按扭,完成添加。,3、添加文件,4、修改文件(1)在“项目管理器”中,选择用户想要修改的文件,如“自由表”下的一个表。(2)单击“项目管理器”中的“修改”按钮。(3)在缺省或合适的设计器中打开选定的文件进行编辑或修改。,4、修改文件,5、移去文件(1)在“项目管理器”中,选择用户想移去的文件。(2)单击“项目管理器”中的“移去”按扭,弹出 “移去”文件对话框。(3)在对话框中,单击“移去”按扭,将其移出;如果用户想从磁盘中删除文件,单击“删除”按钮,即可删除文件。,5、移去文件,1.5.4 项目文件的连编与运行,连编是将项目中所有的文件连接编译在一起,这是大多数系统开发都要做的工作。 1、设置主文件在连编之前应先设置主文件。主文件是“项目管理器”的主控程序,是整个应用程序的起点。(1)在项目管理器中选择要设置为主文件的程序。(2)选择“项目”菜单中的“设置主文件”菜单项。,1.5.4 项目文件的连编与运行 连编是将项目中所有的文件连,2、连编项目 在“项目管理器”中加进所有参加连编的项目,如,程序、窗体、菜单、数据库、报表、其它文本文件等,并设置好主文件后即可对该项目文件进行编译。(1)单击“项目管理器”中的“连编”按钮,弹出“连编选项”对话框。(2)在对话框中选择“操作”框中的相应选项。(3)单击“确定”按钮,完成连编。,2、连编项目,1.5.5 其他操作,1、浏览项目中表的数据在“项目管理器”中,当选定一个表时,切换出“浏览”按钮,用户可通过此操作在“浏览”窗口中浏览表文件。(1)在“项目管理器”中,选择用户想浏览的数据表。(2)单击“浏览”按钮,在浏览窗口中显示结果。,1.5.5 其他操作1、浏览项目中表的数据,2、预览报表或标签当选定“项目管理器”中的报表或标签文件时,切换出此按钮,用户可通过此操作在预览方式下预览显示所选的报表或标签文件。(1)在“项目管理器”中,选择用户想预览的报表或标签文件。(2)单击“预览”按钮,在预览窗口中显示结果。,2、预览报表或标签,3、运行查询、表单或程序当选定“项目管理器”中的查询、表单或程序文件时,切换出此按钮,用户可通过此操作快速地执行所选文件。(1)在“项目管理器”中,选择用户想运行的查询、表单或程序文件。(2)单击“运行”按钮,执行选定的查询、表单或程序。,3、运行查询、表单或程序,4、“项目信息”的显示与编辑显示、修改“项目信息”的操作步骤如下:(1)打开要使用的“项目”。(2)在主菜单中,选择“项目”菜单中的“项目信息”菜单项,或在“项目管理器”中的“连编”按钮上按右键,选择“项目信息”菜单项,弹出 “项目信息”对话框。(3)选择相应的选项卡,浏览或编辑项目信息。(4)按“确定”按钮,完成整个项目信息的设置。,4、“项目信息”的显示与编辑,案例 1 职工管理系统项目的建立,Vf系统的安装用开始菜单启动vf使用“职工管理”项目文件,案例 1 职工管理系统项目的建立Vf系统的安装,visual-foxpro程序设计案例教程第2课时课件,第2章 数据及其运算,教学目标:学会数据处理及运算方法。教学要求:了解VFP的数据类型,掌握常量与变量的定义及使用,熟练掌握函数的使用,表达式的确定。教学重点与难点:函数的使用,难点是表达式。,第2章 数据及其运算教学目标:学会数据处理及运算方法。,2.1数据类型,数据是描述事物的符号,它的类型决定了其存储和使用方式。1、数值型数值型数据(Numeric)是表示数量并可以进行算术运算的数据类型,用字母N表示。数值型数据由数字(09)、小数点和正负号组成。数值型数据在内存中占用8个字节。数值型数据由于表达或存储形式的不同,又被分为数值型(numeric)、浮点型(float)、双精度型(double)和整型(integer)。,2.1数据类型数据是描述事物的符号,它的类型决定了其存储和使,2、字符型字符型数据(Character)描述的是不具有计算能力的文字数据类型,是最常用的数据类型之一,用字母C表示。字符型数据是由汉字和ASCII字符集中可打印字符(英文字符、数字字符、空格及其他专用字符)组成的。字符型数据的最大长度为254个字符。3、货币型货币型(Currency)数据是为存储货币值而使用的一种数据类型,它默认保留4位小数,占据8字节存储空间。货币型数据用字母Y表示。,2、字符型,4、日期型 日期型数据(Date)是用于表示日期的数据,用字母D表示。日期的默认格式为mm/dd/yy。其中:mm代表月,dd代表日,yy代表年。年度也可以是4位。日期型数据的长度固定为8位。日期型数据的显示格式有多种,它受系统日期格式设置的影响。,4、日期型,5、日期时间型日期时间型(Date Time)数据是表示日期和时间的数据,用字母T表示。日期时间的默认格式是mm/dd/yyyy hh:mm:ss,其中,mm、dd、yyyy的意义与日期型相同,其中,hh表示小时,mm表示分钟,ss表示秒数。日期时间型数据也是采用固定长度8位,取值范围是:日期为01/01/000112/31/9999,时间为00:00:0023:59:59。例如:08/16/2003 10:35:30表示2003年8月16日10时35分30秒这一日期和时间。,5、日期时间型,6、逻辑型逻辑型数据(Logic)是描述客观事物真假的数据,用于表示逻辑判断结果,用字母L表示。逻辑型数据只有真(.T.或.Y.)和假(.F.或.N.)两种值。长度固定为1位。7、备注型备注型数据(Memo)是用于存放较长的字符型数据的数据类型,用字母M表示。备注型数据没有数据长度限制,仅受限于磁盘空间。它只用于表中字段类型的定义,字段长度固定为4个字节,实际数据存放在与表文件同名的备注文件(.fpt)中,长度根据数据的内容而定。,6、逻辑型,8、通用型通用型数据(General)是用于存储OLE对象的数据,用字母G表示。通用型数据中的OLE对象可以是电子表格、文档、图片等。OLE对象的实际内容、类型和数据量取决于连接或嵌入OLE对象的操作方式。通用型数据只用于数据表中的字段类型的定义。其长度固定为4位,实际数据长度仅受限于现有的磁盘空间。,8、通用型,9、二进制字符型和二进制备注型这两类数据是以二进制格式存储的数据类型,只能用在表中字段数据的定义。所存储的数据不受代码页改变的影响。,9、二进制字符型和二进制备注型,2.2 常量与变量,数据输入、输出是通过数据的存储设备完成的。通常都是将数据存入到常量、变量、数组中,而在数据库系统环境下,还可以把数据存入到字段、记录和对象中。我们把这些供数据存储的常量、变量、数组、字段、记录和对象统称为数据存储容器。 对数据进行加工处理时,数据存储容器的不同,决定了数据的类型和使用方法的不同,同时也限定了数据的使用范围。以下我们介绍常用的几种数据存储容器。,2.2 常量与变量 数据输入、输出是通过数据的存储设备,2.2.1 常量常量是一个命名的数据项,是在命令或程序中直接引用的实际值,其特征是它在所有的操作中其值始终保持不变。常量有数值型、字符型、货币型、逻辑型、日期型和时间日期型六种。,2.2.1 常量,1、数值型常量数据型常量即常数,用来表示一个数量的大小。数值型常量可以表示为定点形式,也可以表示为浮点形式。定点形式由数字(09)、小数点和正负号组成。例如:8713.25、-12368、+3325.67。浮点形式由数字(09)、小数点和正负号组成的浮点格式。例如:-987e+15、 +123456e-79。,1、数值型常量,2、字符型常量字符型常量即字符串。由汉字和ASCII字符集中可打印字符组成,并由定界符( 或 或 )括起来。例如: STRING、 数据库的应用系统3、货币型常量货币型常量的书写格式与数值型常量类似,但要加上一个前置的$。货币型数据在存储和计算时,采用4位小数。如果一个货币型常量多于4位小数,那么系统会自动将多余的小数位四舍五入。例如,货币型常量$3.1415926将存储为$3.1416。货币型常量不能采用指数形式。,2、字符型常量,4、逻辑型常量逻辑型常量只有“逻辑真”和”逻辑假”两个值,凡是表示两种状况的数据均可采用逻辑常量来表示,例如,已婚和未婚、党员与非党员等。逻辑常量使用“”为定界符,用.T、.t、.Y、.y.表示逻辑真,用.F.、.f.、.N.、.n.表示逻辑假。,4、逻辑型常量,5、日期型常量日期型常量用一对花括号“”和“”作为定界符,花括号中包含同按其常规的输入格式yyyy/mm/dd表示的符号组成。例如: 2000/12/20、2000/01/016、日期时间型常量日期时间型常量包括日期和时间两部分内容:,。由按其常规的输入格式yyyy/mm/dd hh:mm:ss表示的符号组成。例如: 2000/12/12 11:50:00,5、日期型常量,2.2.2 变量,变量是在操作过程中可以改变其值的数据对象。在VFP中变量主要分为字段变量、内存变量、数组变量三种形式。此外,作为面向对象的程序设计语言,VFP在进行面向对象的程序设计中引入了对象的概念,对象实质上也是一类变量。确定一个变量,需要确定其3个要素:变量名、数据类型和变量值。,2.2.2 变量变量是在操作过程中可以改变其值的数据对象。,1、命名规则(1)使用字母、汉字、下划线和数字命名。(2)命名以字母或下划线开头,可使用1128个字符。(3)为避免误解、混淆,避免使用VFP的保留字。(4)变量名的命名应遵循操作系统的约定。,1、命名规则,2、内存变量内存变量是一般意义下的简单变量。它独立于表,是一种临时工作单元,称为内存变量。每一个内存变量都必须有一个固定的名称,以标识它在该内存单元的存储位置,用户可以通过变量标识符来存取常量。内存变量名是由字母、数字和下划线组成的,不能与VFP系统提供的命令、语句专用符号相同,也不能和VFP系统提供的函数名同名。如果内存变量与数据表中的字段变量同名时,用户在引用内存变量时,要在其名字前加一个前缀(m.),用以强调这一变量是内存变量。,2、内存变量,(1)内存变量的类型用户可以根据需要定义内存变量类型,它的类型取决于首次接受的常量的类型。也就是说,内存变量类型的定义是通过赋值语句来完成的。内存变量的类型有数值型、浮点型、字符型、逻辑型、日期型、日期时间型六种。,(1)内存变量的类型,(2)内存变量的赋值在VFP中,变量必须先定义以后才能被使用。但是向内存变量赋值无需事先定义,变量的定义和赋值同时完成。赋值命令的格式有两种命令格式1:=命令格式2:STORE TO 命令功能:把的运算结果送到内存变量中。,(2)内存变量的赋值,说 明:1)首先计算的值,然后将值赋给内存变量。2)表示用逗号分隔的多个内存变量。格式1:一次仅给一个变量赋值,格式2:一次可以给多个变量赋值。特别要注意,除非用内存变量文件来保存内存变量值,否则,当退出VFP系统后,内存变量的值也会与系统一起消失。例如:给内存变量x,y,z赋值X=2003-12-31 STORE 20*5 TO Y,Z,说 明:,(3)内存变量值的输出命令格式:LIST|DISPLAY MOMORY LIKETO PRINTERPROMPT|TO FILE 命令功能:显示内存变量说 明:1)LIKE选项:可以筛选出需要的变量,缺省该选项,系统默认为全体变量。2)通配符:包括“*”和“?”。*代表多个字符,?代表一个字符,如*、A*、?、?B?分别代表所有变量、变量名以A开头的变量、变量名是1个字符的变量、变量名是3个字符中间为B的变量。3)TO PRINTER选项:是将显示的变量内容输出到打印机,PROMPT显示打印提示窗口。4)TO FILE选项:是将显示的变量内容保存到文本文件中。,(3)内存变量值的输出,(4)内存变量文件的建立将所定义的内存变量的各种信息全都保存到一个文件中,该文件称为内存变量文件。其默认的扩展名为.mem。命令格式:SAVE TO ALL LIKE|EXCEPT 说明:ALL表示将全部内存变量存入文件中。ALL LIKE 表示内存变量中所有与通配符相匹配的内存变量都存入文件。ALL EXCEPT 表示把与通配符不匹配的全部内存变量存入文件中。,(4)内存变量文件的建立,(5)内存变量的恢复内存变量的恢复是指将已存入内存变量文件中的内存变量从文件中读出,装入内存中。命令格式:RESTORE FROM ADDITIVE说 明:若命令中含有ADDITIVE任选项,系统不清除内存中现有的内存变量,并追加文件中的内存变量。,(5)内存变量的恢复,(6)内存变量的释放当程序结束或在程序的剩余部分不再使用某些变量时,可以将这些变量从内存中释放掉。命令格式:RELEASE ALL LIKE|EXCEPT 命令功能:从内存中删除或释放指定的内存变量。说明:中的各个变量用逗号分隔。例如:清除A1,A2两个内存变量。RELEASE A1,A2还可以使用CLEAR MEMORY命令清除所有的内存变量。,(6)内存变量的释放,(7)内存变量的作用域 内存变量的作用域就是它的作用范围。根据内存变量的作用范围分为全局变量、局部变量和本地变量。使用LOCAL、PRIVATE、PUBLIC命令可以定义内存变量的作用域,也可以使用系统默认的范围作为内存变量的作用域。,(7)内存变量的作用域,1)定义全局变量全局变量必须先定义,后赋值。已经定义成全局变量的内存变量,还可以在下级程序中进一步定义成局部变量。但已经定义成局部变量的内存变量,却不可以再定义成全局变量。命令格式:PUBLIC内存变量表命令功能:定义内存变量表中指定的内存变量为全局变量。例如:定义P1,P2为全局变量。PUBLIC P1,P2,1)定义全局变量,2)定义局部变量局部变量在定义它的程序,以及被该程序调用的程序、过程和局部变量函数中有效。命令格式:PRIVATE内存变量表命令功能:定义内存变量表中指定的内存变量为局部变量。例如:定义P11,P12为局部变量。PRIVATE P11,P12,2)定义局部变量,3)定义本地变量本地变量只在定义它的程序中有效。命令格式:LOCAL内存变量表命令功能:定义内存变量表中指定的内存变量为本地变量。例如:定义L1,L2为本地变量。LOCAL L1,L2,3)定义本地变量,3、数组变量 数组是一组有序内存变量的集合。或者说,数组是由同一个名字组织起来的简单内存变量的集合。其中每一个内存变量都是这个数组的一个元素,它是由一个以行和列形式表示的数组元素的矩阵。 所有的数组元素是用同一个变量名命名的一个集合体,而且每一个数组元素在内存中独占一个内存单元。为了区分不同的数组元素,每一个数组元素都是通过数组名和下标来访问的(如A1,2、B5)。 数组是内存变量的一种特殊形式,使用时也同样要注意其作用域。,3、数组变量,(1)定义数组在VFP系统环境下,可以通过PUBLIC、DIMENSION或DECLARE定义只有一个下标的一维数组或有两个下标的二维数组。数组一旦定义,它的初始值为逻辑值.F.,下标的起始值是1。命令格式:PUBLIC|DIMENSION|DECLARE数组名1(下标1,下标2),数组名2(下标1,下标2)命令功能:定义一个或多个内存变量数组。,(1)定义数组,说 明:使用上述命令可以定义一维或二维数组,并规定每维数组中最多可有3600个元素。不管数组定义多少个可使用的内存变量,一组内存变量在显示内存时只算一个。每个数组元素占18个字节,外加存储数组描述符的空间。例如A(2,3)的数组至少需要占108(2318=108)个字节。数组的下标起始值是1。数组元素缺省初始值是“假”。当数组被定义为二维下标时,它也能以一维下标方式被存取。在这种访问过程中,要注意数组元素的存储顺序。数组一经定义,他们每个元素都可当作一个独立的内存变量使用,它具有与内存变量相同的性质。public定义的为公用数组,dimension和declare定义的为专用数组。,说 明:,例如:定义一个一维数组SZ1和一个二维数组SZ2。DIMENSION SZ1(10),SZ2(5,2)上面这一定义一旦完成,系统就允许使用SZ1和SZ2两个数组。SZ1是一维数组,SZ1下标的上界10,下界为1。数组元素分别为SZ1(1),SZ1(2),SZ1(3) SZ1(10)。SZ2是二维数组,SZ2第一个下标为行标,上界5,下界为1,SZ2第二个下标为列标,上界2,下界为1。数组元素分别为SZ2(1,1),SZ2(1,2),SZ2(2,1),SZ2(2,2) SZ2(5,1),SZ2(5,2)。,例如:定义一个一维数组SZ1和一个二维数组SZ2。,(2)数组类型数组类型是指数组元素的类型。因为每一个数组元素又是一个内存变量,所以它的类型同样由它接受的数据的类型所决定。在VFP系统环境下,同一个数组元素在不同时刻可以存放不同类型的数据,在同一个数组中,每个元素的值可以是不同的数据类型。,(2)数组类型,(3)数组赋值给数组赋值,就是分别给每个数组元素赋值,与给内存变量赋值操作完全相同。例如:定义一个一维数组X,给所有数组元素赋值并输出其值。DIMENSION X(4)X(4)= 12345STORE 0 TO X(1),X(2),X(3)? X(1),X(2),X(3),X(4),(3)数组赋值,4、字段变量字段变量就是指数据表中已定义的任意一个字段。字段变量的数据类型与该字段定义的类型一致。字段变量的类型有数值型、浮点型、整型、双精度型、字符型、逻辑型、日期型、时间日期型、备注型和通用型等。使用字段变量首先要建立数据表,建立数据表时首先定义的就是字段变量属性(名字、类型和长度)。字段变量的定义及字段变量数据的输入、输出,需要在表设计器和表浏览、编辑窗口中进行。,4、字段变量,visual-foxpro程序设计案例教程第2课时课件,