VisualFoxPro的基础知识.ppt
《VisualFoxPro的基础知识.ppt》由会员分享,可在线阅读,更多相关《VisualFoxPro的基础知识.ppt(106页珍藏版)》请在三一办公上搜索。
1、第二章 Visual FoxPro的基础知识,目录,2.1VFP的数据类型2.2VFP的常量与变量2.3运算符与表达式2.4VFP的常用函数2.5VFP的命令结构和书写规则2.6VFP的文件类型,2.1 VFP的数据类型,VFP中的数据按其构造、基本特性、用途和运算方法等分为不同的类型,数据类型决定了数据的存储方式和运算方式。常用的数据类型有如下11种:1.字符型(Character,C)字符型数据包括中、英文字符、数字字符和其他可显示的ASCII字符,其长度(即字符个数)范围是0254个字符。,2.1 VFP的数据类型,2.数值型(Numeric,N)数值型数据用来表示数量,由阿拉伯数字、小
2、数点和正负号组成。数值型数据的长度为120位,包含整数、小数点和小数位数。在Visual FoxPro中,具有数值特征的数据类型还有整型(Integer,I)、浮点型(Float,F)和双精度型(Double,B),这3种数据类型只能用于字段变量。3.货币型(Currency,Y)货币型数据用来存储货币值,默认保留4位小数,存储空间占据8个字节。,2.1 VFP的数据类型(续1),4.日期型(Date,D)日期型数据用来表示日期,其存储格式为“YYYYMMDD”,占8个字节。日期型数据的显示格式有多种,受SET DATE、SET MARK、SET CENTURY等命令的影响。5.日期时间型(D
3、ate Time,T)日期时间型数据用来表示日期和时间,其存储格式为“YYYYMMDDHHMMSS”,占8个字节。其日期部分格式受受SET DATE、SET MARK、SET CENTURY等命令的影响,时间部分格式受SET HOURS、SET SECONDS命令影响。,2.1 VFP的数据类型(续2),6.逻辑型(Logic,L)逻辑型数据用来表示逻辑判断的结果,只有真(.t.或.y.)和假(.f.或.n.)两个值,长度固定为1位。7.备注型(Memo,M)备注型数据用于存放数据块,其长度固定为4个字节,用于存储指向备注文件中相应内容的记录指针;备注型字段本身的内容没有长度限制,该字段的数据
4、存放在与表文件同名的备注文件(.fpt)中。,2.1 VFP的数据类型(续3),8.通用型(General,G)通用型数据用来存储OLE(对象链接与嵌入)对象,其长度固定为4个字节,通用型数据中的OLE对象可以是电子表格、文档、图形、声音等。备注型字段本身的内容没有长度限制,该字段的数据存放在与表文件同名的备注文件(.fpt)中。,2.1 VFP的数据类型(续4),返回目录,2.2 VFP的常量与变量,2.2 VFP的常量与变量,2.2.1常量2.2.2变量,常量,常量用来表示一个具体的、不变的数据量。不同类型的常量用不同的书写形式区分。VFP中常量包括字符型、数值型、日期型、日期时间型、逻辑
5、型、货币型等6种数据类型。,常量(续1),字符常量 字符型常量也称字符串,它是由定界符括起来的一串字符。VFP中字符型数据的定界符包括半角的双引号()、单引号()和方括号()三种。如FoxPro、FoxPro和FoxPro都表示同一个字符串。这三种定界符的作用相同,使用时必须成对使用,不能交叉使用。如果某一种定界符是字符型常量中的普通字符,应选择另一种定界符,如am a student,或Iam a student。不包含任何字符的字符串()称为空串。,2.数值型常量 数值型常量由09共10个数字、小数点、正负号组成。其表示形式可以是整数如123、小数如123.35、负数如-123.45;还可
6、以用科学计数法表示,如1.234E-5表示1.23410-5。3.日期型常量 日期型常量用来表示日期,年、月、日之间的分隔符可以使用(/)、(.)、(-)和空格。日期型常量的格式分为严格格式和传统格式两种。,常量(续2),(1)严格日期格式:YYYY-MM-DD,该格式以字符()开头,严格规定年月日顺序,表达一个确切的日期,它的表示形式不受SET DATE TO命令的影响,如2003-12-23。(2)传统的日期格式:系统默认的传统日期格式是美国日期格式mm/dd/yy,年份可以是4位或2位数字,如12/23/03、12/23/2003等。严格的日期格式可以在任何情况下使用,传统的日期格式只能
7、在SET STRICTDATE TO 0状态下使用。,常量(续3),(3)与日期型常量书写格式相关的函数日期格式的检查函数【语法格式】SET STRICTDATE TO 0|1|2【说明】0:表示不进行严格检查,可使用各种格式。1:表示进行严格检查,不能使用传统格式,是系统的默认设置。2:表示进行严格检查,但是对CTOD()、DTOC()函数格式有效。,常量(续4),日期格式的分隔符设置命令【语法格式】SET MARK TO 日期分隔符【说明】用于设置显示日期数据时使用的分隔符,默认分隔符为/。日期格式的日期顺序设置命令【语法格式】SET DATE TO MDY|DMY|YMD【说明】设置日期
8、顺序格式。对于传统格式和CTOD()函数,在输入日期时,要求输入年月日的顺序与该命令的设置一致。,常量(续5),日期格式年份表示位数设置命令【语法格式】SET CENTURY ON|OFF【说明】当选项为ON时,年份显示4位数,否则显示2位数。例.在命令窗口中执行如下命令:?2003/10/23*显示10/23/03,年月日的显示顺序与SET DATE*TO 设置有关,常量(续6),例.在命令窗口中执行如下命令:SET STRICTDATE TO 0?10/23/03&显示10/23/03用传统格式定义日期型数据时,需先执行SET STRICTDATE TO 0且传统日期格式年月日的顺序需与S
9、ET DATE MDY|YMD|DMY 相应,默认为MDY。,常量(续7),例.在命令窗口中执行如下命令:SET STRI TO 1?CTOD(“12/23/03”)&显示12/23/03使用CTOD()函数前需执行 SET STRI TO 0|1,常量(续8),例.在命令窗口中执行如下命令SET STRI TO 0SET DATE DMY*设置日月年,要求传统格式和CTOD()函数与其一致。*且输出显示的格式也为日月年?23/10/03&显示23/10/03?CTOD(“23/12/03”)*显示23/12/03,CTOD()函数的格式 要求与设置一致,常量(续9),例.在命令窗口中执行如下
10、命令:SET MARK TO“”&设置显示日期分隔符为SET DATE MDY?2003/12/23&显示122303。例.在命令窗口中执行如下命令:SET CENTURY ONSET DATE YMD&设置日期显顺序为 年月日?2003/12/23&显示2003/12/23,且年份显示4位,常量(续10),4.日期时间型常量 日期时间型常量用来表示日期和时间。日期部分与日期型常量类似,包括严格和传统两种格式。其严格格式为:YYYY-MM-DD,HH:MM:SSA|P。其中HH、MM、SS的默认值分别为12、0和0。A和P分别表示AM(上午)和PM(下午),默认为AM。如果指定时间大于等于12
11、,则系统认为是下午的时间。,常量(续11),SET STRI TO 0SET CENTURY ONSET DATE YMD?2003/12/23,10:10&显示2003/12/23 10:10:00 AM?2003/12/23,14:10*显示2003/12/23 02:10:00PM,默认12时间制?2003/12/23,2:10 PM&显示2003/12/23 02:10:00PM,常量(续12),例.在命令窗口中执行如下命令:SET HOURS TO 24&将时间显示设置为24小时制?2003/12/23,2:10 PM&显示2003/10/23 14:10:005.逻辑型常量 逻辑型
12、常量用来表示逻辑值。逻辑常量只有真和假两种值,用.T.(或.t.)、.Y.(或.y.)表示真,用.F.(或.f.)、.N.(或.n.)表示假。但主窗口只显示.T.或.F.。,常量(续13),6.货币型常量 货币常量用来表示货币。货币型常量以$符号开头,最多只能保留4位小数,若小数部分超过4位,自动四舍五入。可以和数值型数据进行运算。结果仍为货币型。,常量(续14),返回,2.2.2变量,在命令操作或程序执行过程中,其值可以改变的量称为变量。VFP的变量主要有字段变量和内存变量两种。变量包含三个要素:变量名、变量的数据类型和变量值。无论哪种变量都必须有一个用来标识它的名称,称为变量名。,1.字段
13、变量 字段变量对应于数据表中的字段,数据表中的每一列称为字段,以字段名标识。字段名的命名规则如下:字段名以字母或汉字开头,由汉字、字母、数字和下划线组成,对于字母不区分大小写;在自由表中,字段名长度不超过10个字节;数据库表中的字段名长度不超过128个字符。字段名应避免与VFP系统的保留字相同。所谓保留字是指VFP系统中的命令名、标准函数名等。,2.2.2变量(续1),字段变量存在于数据表中,随着数据表的打开生效;随着数据表的关闭而释放。字段的值随记录指针的移动变化。2.内存变量 内存变量独立于数据表文件,存储于内存中。通常用来保存执行命令或程序运行的中间结果,可以随时定义和释放。内存变量的命
14、名规则如下:内存变量名以字母、汉字、下划线开始,由字母、汉字、下划线和数字组成,字母不区分大小写;变量名不超过128个字符。,2.2.2变量(续2),当内存变量与当前打开的数据表中的字段变量同名时,字段变量被优先使用。当内存变量与字段变量同名时,若要引用内存变量,则需在内存变量名前加M-或M.。VFP中的内存变量又可为系统内存变量和用户定义的内存变量。用户定义的内存变量的数据类型可以有C、N、D、T、Y、L等6种。,2.2.2变量(续3),2.2.2变量(续4),(1)内存变量的赋值【语法格式1】=【功能】计算表达式的值,并将结果赋于内存变量。格式1只能给一个变量赋值。【说明】”=”:赋值号,
15、它的左边只能是内存变量名;表达式:由常量、变量、函数和运算符组成。内存变量的值及类型在赋值时定义,同一个内存变量可多次赋值,它的值和类型取决于最后一次所赋的值。,例在命令窗口中执行如下命令a=10&将数值10赋给内存变量a,a的数据类型为 数值型,值为10?A&主窗口显示10A=10/2&将表达式10/2的结果赋于内存变量a(不 区分大小写)?a&显示日期=2003/12/23&将日期型数据赋给内存变量,变量名是日期?日期&显示12/23/03T=.t.&将逻辑值(真)赋给变量T?t&显示.T.,由于不区分大小写,变量名为T,显 示.T.,2.2.2变量(续5),2.2.2变量(续6),【语法
16、格式2】STROE TO【功能】计算表达式的值并将同一个结果赋给一个或多个变量。【说明】该命令可以一次给多个变量赋予相同的值。当中有多个变量名时,变量之间用逗号隔开。,2.2.2变量(续7),例在命令窗口中执行如下命令STROE“10”TO A1,变量1*将字符数据10同时赋于a1、变量1?a1,变量1&显示 10,10?a1+变量1&显示1010,(2)显示内存变量的值【语法格式】?|?【说明】?命令先输出一个换行,再输出指定内存变量的值;?命令则不输出换行直接输出指定内存变量的值,2.2.2变量(续8),例在命令窗口中执行如下命令:a=.t.b1=”t”?a,b1 X=23+12Y=“23
17、”?X,Y+”12”&在前一个显示命令后接着显示35,2312?12/23/03&另起一行,显示表达式(除法)的结果0.17?“12/23/03”&另起一行显示字符串12/23/03,2.2.2变量(续9),2.2.2变量(续10),(3)保存内存变量【语法格式】SAVE TO|TO MEMO ALL LIKE ALL EXCEPT【功能】将当前内存中的内存变量保存到指定的内存变量文件或备注字段中.,【说明】:指存放内存变量及值的文件名,其命名与一般的文件命名规则相同。默认扩展名为.mem;TO MEMO:表示将内存变量及值保存到数据表的备注字段中;:是指可以包含通配符”?”和”*”的内存变量
18、名;ALL LIKE:保存所有满足指定的那些内存变量;ALL EXCEPT:保存所有不满足指定的那些内存变量;,2.2.2变量(续11),(4)内存变量的恢复【语法格式】RESTORE FROM|FROM MEMO|ADDITIVE【功能】将保存在内存变量文件或备注字段中的内存变量恢复到内存。其默认的内存变量文件的扩展名为.mem。,2.2.2变量(续12),【说明】FROM:表示从指定的内存变量文件恢复内存变量到内存;FROM MEMO:表示从指定的备注字段恢复内存变量到内存;ADDITIVE:保留当前的内存变量,且将指定的内存变量文件或备注字段中的内存变量恢复到内存。若恢复的内存变量与当前
19、内存中已存在内存变量同名,则用恢复的内存变量覆盖原有的内存变量。若省略该选项恢复前先将当前内存中的内存变量全部清除。,2.2.2变量(续13),(5)内存变量的清除【语法格式1】CLEAR ALL【语法格式2】CLEAR MEMORY【语法格式3】RELEASE|ALL EXTENDED|ALL LIKE|EXCEPT,2.2.2变量(续14),【功能】格式1:清除当前内存中用户定义的全部内存变量,且关闭所有打开的数据表以及与之相关的索引、格式和备注文件等,自动选择1号工作区为当前工作区。格式2:清除当前内存中的全部内存变量,释放存储空间,但不关闭数据表文件等。格式3:根据选项的规定清除全部或
20、部分内存变量,2.2.2变量(续15),2.2.2变量(续16),【说明】RELEASE:删除中所列的全部内存变量,各变量之间用逗号隔开。RELEASE ALL:则删除所有内存变量;如果在程序中用RELEASE ALL,则删除当前程序定义的局部变量;若还用了EXTENDED选项,则公用内存变量也被删除。LIKE:则删除所有满足的那些变量EXCEPT:则删除所有不满足的那些变量。,返回,返回目录,2.3 运算符与表达式,表达式是VFP中重要的语法成份,在VFP中,表达式是由常量、变量、函数、运算符和圆括号组成的表示数据之间运算关系的式子。VFP的表达式包括字符型表达式、数值型表达式、日期型表达式
21、、关系型表达式和逻辑型表达式等5种。,2.3 运算符与表达式,2.3.1数值运算符及数值表达式2.3.2字符串运算符及字符表达式2.3.3日期型日期时间运算符及日期型 日期时间表达式2.3.4关系型运算符及关系运表达式2.3.5逻辑型运算符及逻辑表达式,2.3.1 数值运算符及数值表达式,1.数值表达式 数值表达式是由数值型常量、数值型变量、数值型函数和算术运算符组成的式子。参与运算的数据必须是数值型。运算结果仍为数值型。2.数值运算符 算术运算符包括乘方“”或“*”、乘“*”、除“/”、取模或求余数“%”、加“”、减“”。运算顺序:乘方乘、除、取模加、减在算术运算中圆括号优先,同级运算从左至
22、右。,例在命令窗口中执行如下命令?(2*2+2)2/31210/5&显示2.00?(2*2+2)2/(3-12+10/5)&显示5.14?(3*18+2+4)*2/10)-12+2*9/3&显示354.00,3.表达式的书写规则(1)表达式中所有的字符必须写在同一水平线上;(2)根据运算符运算的优先顺序,合理地加括号,以保证运算顺序的正确性。,2.3.1 数值运算符及数值表达式(续1),例 在命令窗口中执行如下命令:?$123.4567+$0.2345&显示123.6912?$123.4567+10.2345&显示133.6912?123.4567+$0.2345&显示123.6912?123
23、.4567-$10.23&显示113.2267,4.货币表达式 货币型数据前需加$。货币型表达式是由货币型常量、货币型变量和算术运算符组成的式子。货币型表达式的运算对象和运算结果都是货币型。其运算符和运算规则与数值型表达式相同。,2.3.1 数值运算符及数值表达式(续2),返回,2.3.2 字符串运算符及字符表达式,1.字符型表达式 字符型表达式是由字符型常量、字符型变量、返回字符型数据的函数和字符运算符组成的表达式。2.运算符 字符运算符主要有两类:连接运算符(、)和包含运算符($),它们被分别用来进行连接运算和包含运算。,(1)连接运算符+和-运算符“”将两个字符串按它们在原字符串中的顺序
24、首尾相接;运算符“”号将两个字符串中除左边字符串尾部空格以外的字符首尾相接,然后将左边字符串中的尾部空格移至结果字符串的尾部。连接运算的结果仍为字符型。,2.3.2 字符串运算符及字符表达式(续1),例在命令窗口中执行如下命令m1=操作系统m2Windows?m2+m1&显示“Windows 操作系统”?m2-m1+2000*显示“Windows 操作系统2000”,m2后面的空格移到*了m1后面,2.3.2 字符串运算符及字符表达式(续2),(2)包含运算【语法格式】$【功能】比较两个字符表达式,如果字符型表达式1包含在字符表达式2中,即字符型表达式1是字符型表达式2的子字符串,则运算结果为
25、真(.T.),否则为假(.F.)。【说明】“$”运算符两边的数据类型必须都是字符型,运算结果是逻辑型。,2.3.2 字符串运算符及字符表达式(续3),例在命令窗口执行如下命令a1=湖北大学a2=湖北?a1$a2&显示.F.?a2$a1&显示.T.,2.3.2 字符串运算符及字符表达式(续4),返回,2.3.3 日期型日期时间运算符及日期型日期时间表达式,1.日期型日期时间型表达式 日期型和日期时间型表达式允许日期型、日期时间型数据或数值型数据参与运算,运算结果为日期型、日期时间型或数值型。,2.日期型与日期时间型运算符 日期或日期时间的运算符有“”和“”两种。日期或日期时间型表达式主要包括如下
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VisualFoxPro 基础知识
链接地址:https://www.31ppt.com/p-6523120.html