一VFP中表达式
VFP表达式及函数

常量( 常量(三)
日期型常量:日期型常量必须用花括号括起来,可以进行简单的加、 减运算,其格式如下:{^YYYY/MM/DD} 例如:{^2001/5/4}、{^2000.11.29} 注意:在 中输入的符号, 注意 在VFP中输入的符号,必须是西文符号。 中输入的符号 必须是西文符号。 日期时间型常量:由日期和时间两部分组成,输入时用逗号或空格来 分隔。 例如:{^2003-05-22,11:30 p}或{^2003-05-22 11:30 pm} 逻辑型常量:逻辑型常量只有“真”和“假”两个值。·T·、·t·、 ·Y·、·y·都表示“真”,·F·、·f·、·N·、·n· 都表示“假”。 注意:在使用逻辑型常量时,必须输入字符左右两边的点。 注意:在使用逻辑型常量时,必须输入字符左右两边的点。 例如: ·T·、·F·、·t·、·y·、·N· 、 、 、 、 就错了。 直接写 T 就错了。 货币型常量:以$开头,并四舍五入到小数点后4位。 例如: $288.12367会自动四舍五入成$288.1237
数据的类型(见书 数据的类型 见书29) 见书
类型 字符型 数值型 代号 类型说明 任意汉字,字符,符号等 由正负号,数字和小数 点所组成,可用于计算 的数据 格式为mm/dd/yy,月/日 /年格式,可进行日期加 减的运算 “真”为·T·,”假”为·F· 大量的字符,汉字, 多于254个字节的数据 主要用于存储 Windows中的OLE对象 (比如图片等) 字段宽度 254个字节 20个字节 说明 最多可写127个汉字 数值范围从 —0.9999999999E+19 0.9999999999E+20 到
表数据的输入
输入日期型数据时是按照MM/DD/YY(月/日/年)格式 输入的。 输入逻辑型数据时:只能输入T,Y,F,N这四个字母 之一。T,Y表示“真”,F,N表示“假”。 输入备注型数据时,需要双击“memo”,打开相应的字 双击“ 双击 段编辑窗口,然后输入内容。输入完毕后,用Ctrl-W保存, 或用关闭按钮保存。如果不想保存,可按Esc键,或Ctrl-Q, 放弃本次输入的内容。当某记录的备注型字段非空时, “memo”首字母“M”将大写,并且会生成一个主文件名与表 文件的主文件名相同,扩展名为.FPT的文件。 输入通用型数据时,需双击“gen”,在打开的编辑窗口 中通过“编辑”菜单中的“插入对象”命令插入需要嵌入的 对象。当某记录的通用型字段非空时,“gen”首字母“G”将 大写,并且会生成一个主文件名与表文件的主文件名相同, 扩展名为.FPT的文件。NULL值问题(ctrl+0) 值问题( 值问题 )
第二章VFP的数据表达式一、数据类型1.字符型字符型(Character,C

第二章 VFP的数据表达式一、数据类型1.字符型字符型(Character,C型)通常用于储存文本信息,由字母、汉字、空格、数字、符号和标点等字符组成,宽度不能超过254字节。
若超过254字节,则请改用备注型。
例如:“abc”,“计算机”,“123”,“ID18”等。
2.货币型货币型(Currency,Y型)这种类型是专为货币数据设计的数据类型,表示方法是在数字前加一个$符号。
最多只能保留到小数点后4位,超过四位则会自动四舍五入:少于四位则会自动补零。
占8个字节的空间。
例如:money=$980.45678。
3.数值型数值型(Numeric,N型)用于表示数量,由数字0~9、+或-,以及小数点组成。
数值型数据占8个字节,长度为1~20个字节。
VFP中文版采用十进制和十六进制两种格式。
例如:98.66,0xff(前面加0x表示十六进制)。
数值型数据可采用科学计数法,如“3E2”代表“3×102”,“10e-2”代表“10×10-2”。
4.整型整型(Integer,I型)用于存储不含小数部分的数值。
是一种较小的数据类型,整数型占有内存空间4个字节。
5.浮点型浮点型(Float,F型)等价于数值型类型。
VFP出于兼容性的考虑设置了这个数据类型。
6.日期型日期型(Date,D型)用于存储日期数据。
由年、月、日三部分组成,存储格式为“YYYYMMDD”。
表示范围为{^0001/01/01}到{^9999/12/31},即公元0001年1月1日到公元9999年12月31日。
其中“^”符号表示此日期格式严格遵循YMD(year,month,day)的格式,使用日期型数据时应用大括号{}括起来。
日期型数据存储长度为8个字节。
例如:mydate={^2006/10/12}表示日期是2006年10月12日,而不是2006年12月10日。
7.时间日期型时间日期型(Date Time,T型)用于记录日期时间的数据。
VFP表达式和运算符

⼀.表达式:表达式是vfp命令和函数的重要组成部分,是由常量、变量、函数⽤运算符连接⽽成的有意义的式⼦⼆.运算符:1.算术运算符:算术运算符⽤于进⾏算术运算,连接起来的表达式称为算术表达式,结果是⼀个数值.如下表:运算符功能+,-正负号**,^幂*,/,%乘,除,取余+,-加,减优先级从⾼到低为:**,^→*,/,%→+,-例:将(55+9×5)÷2写成vfp算术表达式.我们在命令窗⼝输⼊并执⾏下列:(55+9*5)/2 &&结果可以⼝算,是502.字符运算符:⽤于字符串连接运算,结果是⼀个新的字符串,如下表:运算符功能+将+号前后字符串连接起来组成⼀个新的字符串-删除-号前⾯字符串的尾部空格后再与右侧的字符串组成新的字符串例:在命令窗⼝输⼊执⾏以下:a="abc " &&abc后⾯有两个空格b="def " &&def后⾯有两个空格c="ghi"a+b+c &&完全连接,下⾏是运⾏结果abc def ghix=a-b-cx &&下⾏是结果abcdefghi3.⽇期运算符:⽤于进⾏⽇期运算,如下表:运算符功能+⽇期+天数得到新⽇期时间+秒数得到新时间-⽇期-⽇期得到间隔天数时间-时间得到间隔秒数⽇期运⾏符⽆优先级例1:计算⾹港回归距现在多少天.date()-{^1997.10.01} &&date()函数⽤于取得当前⽇期.例2:计算距今天1000天的⽇期.date()+10004.关系运算符:⽤于进⾏关系运算,结果是逻辑值,如下表:运算符功能>⼤于=等于<>,#,!=不等于<=⼩于等于>=⼤于等于==字符串全等⽐较$包含运算,判断左侧字符串是否是右侧字符串的⼦串例:输⼊并执⾏下列命令:a=1234 &&定义数值常量b=2345 &&定义数值常量a.t. &&关系成⽴取真值a>b &&数值⽐较.F. &&关系不成⽴,取假值x="a" &&定义字符常量y="b" &&定义字符常量x>y &&⽐较a和b字符的ASCⅡ码.f. &&a和b的ASCⅡ码分别是97和98,关系不成⽴取逻辑假值"bc"$"abcd" &&⽐较$左边的字符串是否是其右边的字符串的⼦串.T. &&是其⼦串,取逻辑真值"ac"$"abcd" &&⽐较$左边的字符串是否是其右边的字符串的⼦串.F. &&不是其⼦串,取逻辑假值"abcd"="abc" &&⽐较等号右边字符串是否是其左边字符串从⾸字符起的⼦串.T. &&是其⼦串,取逻辑真值"abcd"="bcd" &&⽐较等号右边字符串是否是其左边字符串从⾸字符起的⼦串.F. &&不是其⼦串,取逻辑假值"abcd"=="abc" &&字符串等长并完全相同⽐较.F. &&不等长取逻辑假值5.逻辑运算符:⽤于作表达式之间的逻辑运算,参加运算的表达式应有逻辑值.运算的结果是逻辑值,如下表: 运算符功能.Not.,!逻辑⾮.and.逻辑与.or.逻辑或逻辑运算符的优先级:逻辑⾮→逻辑与→逻辑或逻辑运算符的意义是:A.and.B 只有当A和B都为真时,逻辑运算的结果才为真,否则为假A.or.B A和B中有⼀个为真,结果却为真.Not.A 当A为真值时,结果为假值,当A为假值时,结果为真值.例:y=.f. &&y的值为逻辑假.Not.y.T. &&对y值取反,结果为真a=3b=9a.T.a.T. &&两边都为真,结果为真。
VFP表达式、函数的使用,

VFP表达式、函数的使用,《计算机应用基础》期末考试准考证号:11216101110+学号后4位上机内容:第一部分:函数一、数学函数1、INT( )功能:取整。
例如:?INT(3.4) 32、?ROUND( )功能:四舍五入例如:?ROUND(2005.789,2) 2005.793、MOD( )功能:取模整数例如:?MOD(69,-5) -44、MAX/MIN()功能:最大值最小值例如:?MAX (3.78,5,0),MIN(-6,-8,-9) 5 -9 5、ABS( )功能:绝对值例如:?ABS(-3.89) 3.896、SQRT( )功能:平方根函数例如:?SQRT(4) 27、EXP( )功能:指数函数例如:?EXP(0) 18、RAND( )功能:随机取数例如:?(9-8)*RAND(8)+9 9.179、ALLTRIM()功能:取消字符表达式中的前后空格例如:?ALLTRIM("好好"+"学习") 好好学习10、LTRIM()功能:删除字符串前导空格函数例如:?"计算机"+LTRIM( "实用技术")计算机实用技术11、TRIM()功能:删除字符串尾部空格函数例如:?trim("他")+"你"12、LEFT()功能:取左子串函数例如:?LEFT(“ABCDEF”,2) AB13、RIGHT()功能:取右子串函数例如:?RIGHT(“ABDCE”,2) CE14、SUBSTR()功能:取子串函数例如:?SUBSTR(2,3,4) 315、LEN()功能:字符串长度函数例如:?LEN("I AM LILEI") 10 16、APACE()功能:空格函数例如:?"白痴"+SPACE(2+2)+"崔哥"白痴崔哥17、STUFF()功能:字符串替换函数例如:?STUFF("浙江万里学院",5,0,"宁波") 浙江宁波万里学院18、TIME()功能:日期时间例如:?TIME() 11:20:4519、 DATE()功能:显示日期例如:?DATE() 12/20/1120、DATETIME()功能:显示日期时间例如:?DATETIME() 12/20/11 09:07:02 21、YEAR()功能:显示年份例如:?YEAR() 12/20/1122、DAY功能:日期函数例如:?day() 12/2023、MONTH/CMONTH( )功能:月份。
vfp常用命令

vfp常用命令=计算表达式,不返回计算结果\/\\ 输出文本?/?? 在下一行或当前行输出表达式值??? 直接向打印机输出@…BOX 画方框@…CLEAR 清除屏幕某个区域@…EDIT—Text Edit Regons 建立一个文本编辑区@…FILL 改变指定区域内颜色@…GET 在指定位置按设置格式输入数据@…GET—CheckBoxes 建立复选框或检查图表@…GET—Invisible Buttons 建立不可见按钮@…GET—lists 建立一个列表@…GET—Popups 建立弹出式菜单@…GET—Push Buttons 建立命令按钮@…GET—Radio Buttons 建立单选按钮@…GET—Soinners 生成一个数码器@…MENU 建立弹出式菜单@…PROMPT 建立条形菜单@…SAY在指定位置按设置格式输出数据@…SAY—BMPs & OLE Objects 在主窗口中显示BMP文件或OLE对象@…TO 画线框ACCEPT 从键盘接收一个字符串ACTIV A TE MENU 显示并激活一个条形菜单ACTIV A TE POPUP 显示并激活一个弹出菜单ACTIV A TE SCREEN 重建对屏幕的访问ACTIV A TE WINDOW 显示或激活窗口APPEND 追加记录APPEND FROM 从其他库文件读人记录APPEND FROM ARRAY从数组读人{己录APPEND FROM TYPE 从指定类型文件中追加记录APPENDGENERAL 将一个OLE对象转入通用字段APPENDMEMO 向备注字段填人数据A VERAGE 计算平均值BROWSE 编辑记录数据BUILD APP 在项目文件中建立应用文件BUILD EXE 在项目文件中建立.EXE文件BUILD PROJECT 建立项目文件CALCULA TE 统计计算命令CANCEL 终止程序运行CHANGE 编辑记录数据CLEAR 清屏/结束当前活动的READ命令CLEAR ALL 关闭所有打开的库文件,释放所有内存变量CLOSE 关闭指定类型文件CLOSE MEMO 关闭备注字段编辑窗CONTINUE 查找满足LOCA TE条件的下一记录COPY FILE 复制任意类型文件COPY INDEXES 复制单索引文件到复合索引文件COPY MEMO 复制备注字段到文本文件COPY STRUCTURE 复制库文件结构COPY STRUCTURE EXTENDED 建立结构文件COPY TAG 复制复合索引文件标识到单索引文件COPY TO 复制当前库文件COPY TO ARRAY复制当前库文件的记录到数组COUNT 统计记录个数CREA TE 建立库文件CREA TE COLOR SET 建立颜色设置CREA TE CURSOR—SQL 建立临时库文件CREA TE FROM 根据结构文件数据创建库文件CREA TE LABEL 打开标签设计窗口CREA TE MENU 打开菜单设计窗口CREA TE PROJECT 创建一个项目CREA TE QUERY打开RQBE窗口CREA TE REPORT 打开报表设计窗口CREA TE REPORT—Quick Report建立快速报表CREA TE SCREEN 打开屏幕设计窗口CREA TE SCREEN—Quick Screen 建立快速屏幕CREA TE TABLE一SQL 建立库文件CREA TE VIEW 建立视图文件DEACTIV A TE MENU 撤消一个菜单DEACTIV A TE POPUP 撤消一个弹出式菜单DEACTIV A TE WINDOW 撤消窗口DECLARE 建立一个内存变量数组DEFINE BAR 在弹出式菜单上生成菜单条DEFINE BOX 围绕打印文本画边框DEFINE MENU 生成条形菜单DEFINE PAD 生成一个菜单签DEFINE POPUP 生成一个弹出式菜单DEFINE WINDOW 生成窗口DELETE 删除{己录DELETE FILE 删除文件DELETE TAG 删除复合索引文件标识DIMENSION 建立数组DIRECTORY/DIR 显示磁盘目录信息DISPLAY显示记录数据DISPLAYMEMORY显示内存变量的状态信息DISPLAY STA TUS 显示FoxPro的环·境参数DISPLAY STRUCTURE 输出库文件结构DO 执行一个程序DO CASE…ENDCASE 多分支判断DO WHILE…ENDWHILE 循环EDIT 编辑记录数据EJECT 打印机换页ERASE 删除文件EXIT 退出循环EXPORT 以不同格式复制库文件数据到其他文件EXTERNAL 通知项目管理器所列名称为外部函数FILER 打开文件FIND 索引查询FLUSH 不关闭文件,将库文件或索引文件的修改写回磁盘FOR...ENDFOR 循环FUNCTION 用户自定义函数GA THER 将数组数据写入库文件GO/GOTO 移动指针HELP 打开帮助窗口HIDE MENU 隐含条形菜单HIDE POPUP 隐含弹出式菜单HIDE WINDOW 隐含窗口IF…ENDIF 条件语句IMPORT 用外部文件数据生成库文件INDEX 建立索引INPUT 通过键盘给内存变量赋值INSERT 插入记录INSERT—SQL 在库文件末端插入一记录JOIN 连接两个库文件KEYBOARD 将数据送人键盘缓冲区LABEL 输出标签LIST 显示记录数据LOCA TE 查询记录数据LOOP 进入新一轮循环MENU 建立菜单系统MENU TO 激活菜单条MODIFY COMMAND/FILE 打开文本编辑器窗口MODIPY GENERAL 为含OLE对象的通用字段打开编辑窗口MODIFY LABEL 编辑标签文件MODIPY MEMO 编辑备注字段MODIFY MENU 打开菜单设计窗口MODIFY PROJECT 打开项目管理器窗口MODIFY QUERY打开RQBE窗口MODIFY REPORT 打开报表设计窗口MODIFY SCREEN 打开屏幕设计·窗口MODIFY STRUCTURE 修改库结构MODIFY WINDOW 修改一个已定义的窗口MOVE POPUP 移动弹出式菜单MOVE WINDOW 移动窗口NOTE/*/&& 注释语句ON BAR 激活菜单条ON ERROR 捕捉程序执行过程中的错误ON ESCAPE 捕捉刚按下的Esc键ON KEY指定程序执行期间,接任意键执行的命令ON KEY=指定READ执行期间,按任意键执行的命令ON KEYLABEL 指定程序执行期间,按指定键执行的命令ON PAD 激活菜单签ON READ ERROR 指定数据输入错误时执行的命令ON SELECTION BAR 选定菜单条时执行的命令ON SELECTION MENU 选定条形菜单项时执行的命令ON SELECTION PAD 选定菜单签时执行的命令ON SELECTION POPUP 选定弹出式菜单项时执行的命令ZAP 快速删空库文件ZOOM WINDOW 改变窗口尺寸(回顶部)PACK 物理删除记录PARAMETERS 把内存变量定义为参数PLAY MACROS 执行宏键POP KEY恢复堆栈中LABEL定义POP MENU 恢复堆栈中条形菜单定义POP POPUP 恢复堆栈中弹出式菜单定义PRINT JOB…ENDPRINTJOB 激活一个打印任务PRIV A TE 屏蔽内存变量PROCEDURE 定义一个过程PUBLIC 定义全局内存变量PUSH KEY将当前LABEL定义压人堆栈PUSH MENU 将条形菜单压人堆栈PUSH POPUP 将弹出式菜单压人堆栈QUIT 关闭文件,退出FoxProREAD 为GET短浯建立的变量赋值READ MENU 激活条形菜单RECALL 恢复被标记的记录REINDEX 重索引RELEASE 清除内存变量和菜单RELEASE MENUS 清除菜单栏RENAME 修改文件名REPLACE 自动替换字段内容REPORT 输出报表RESTORE FROM 从内存变量文件恢复内存变量RESTORE MACROS 恢复键盘宏RESTORE SCREEN 从内存变量中恢复屏幕或窗口映像RESTORE WINDOW 把窗口定义恢复到内存RESUME 继续执行挂起的程序RETRY重新执行前面的命令RETURN 返回上级程序RUN/! 执行外部程序SA VE MACROS 存储宏键SA VE SCREEN 存储当前屏幕信息SA VE TO 将内存变量存储到文件或备注字段中SA VE WINDOW 存储窗口定义SCAN...ENDSCAN 循环SCA TTER 将{己录存人数组SCROLL 滚动屏幕或窗口的一个区域SEEK 索引查找SELECT 激活一个工作区SELECT—SQL 检索数据SET 打开VIEW窗口SET ALTERNA TE 建立后备文件SET ANSI 定义比较方法SET AUTOSA VE 把缓冲区内容写入磁盘并清除缓冲区SET BELL 设定是否响铃SET BLINK 设定字符是否闪烁SET BLOCKSIZE 设定备注字段可取块数SET BORDER 设定边框SET BRSTA TUS 设定打开浏览窗时是否显示状态行SET CARRY向新十己录放人数据SET CENTURY指定日期的世纪表示格式SET CLEAR 设置何时清屏SET CLOCK 在屏幕上定位显示时钟SET COLOR OF 设置颜色对SET COLOR OF SCHEME 设定一个颜色模式SET COLOR SET 装载一个颜色集SET COLOR TO 为用户的菜单或窗口设置颜色SET COMPITABLE 设置兼容,陛SET CONFIRM 设置是否必须按回车键SET CONSOLE 设置输出是否送屏幕SET CURRENCY设置货币符号SET CURSOR 设置是否显示光标SET DA TE 设置日期格式SET DEBUG 设置是否打开调试窗口SET DECIMALS 设置小数位数SET DEFAULT 设置默认盘及路径SET DELETED 设置删除标记是否起作用SET DELIMITERS 设置GET变量的分隔符SET DEVELOPMENT 设置检查文件的创建日期和时间SET DEVICE 设置输出定向到窗口/屏幕/打印机SET DISPLA Y设置显示器模式SET DOHISTORY设置程序命令是否送命令窗口SET ECHO 设置是否打开跟踪窗口SET ESCAPE 设置Esc键是否有效SET EXACT 设置字符比较是否完全匹配SET EXCLUSIVE 设置是否独占SET FIELDS 设置是否可以访问所有字段SET FIL TER 为{己录设置过滤条件SET FIXED 设置小数位数SET FORMA T 设置打开格式文件SET FULLPA TH 设置是否返回文件的完整路径SET FUNCTION 定义功能键SET HEADING 设置是否给出列标题SET HELP 设置是否打开帮助项目SET HELPFII-TER 选择部分帮助项目SET HOURS 设置系统时钟SET INDEX 打开索引文件SET INTENSITY设置是否增强显示编辑区SET KEYC()MP 设置键盘击键方式SET LIBRARY打开外部API程序库SET MACKEY启动宏命令对话框SET MARGIN 设置打印机左空白SET MARK OF 改变菜单标记SET MARK TO 设置日期数据分隔符SET MEMOWIDTH 设置备注字段宽度SET MESSAGE 产生一信息或显示位置SET MOUSE 设置是否可用鼠标SET NEAR 设置索引查找失败后记录指针位置SET NOTIFY设置是否显示某些系统信息SET ODOMETER 设置显示命令状态的报表时间间隔SET OPTIMIZE 设置是否使用Rushmore(快速)技术SET ORDER 确定主索引SET PALETTE 设置是否使用调色板SET PA TH 设置路径SET POINT 设置小数点符号SET PRINTER 设置打印机SET PROCEDURE 打开过程文件SET READBOARDER 设置@…GET编辑区是否带边框SET REFRESH 设置是否即时显示其他用户的修改SET RELA TION 设置关联SET RELA TION OFF 中断关联SET RESOURC正指定或修改资源文件SET SAFETY设置重写文件前是否预警SET SCOREBOARD 规定Num Lock等键状态显示位置SET SEPARA TOR 设置分隔符SET SHADOWS 设置是否显示阴影SET SKIPOF 启动菜单SET SKIP TO 建立一对多关联SET SPACE 设置?/??中,各输出项间是否有空格SET STA TUS 设置是否显示状态条SET STA TUSBAR 设置是否显示窗口类型状态条SET STEP 设置单步执行程序SET STICKY设置鼠标对菜单的影响SET SYSMENU 设置能否访问系统主菜单SET TEXTMERGEDELIMITERS设置表达式合并符SET TOPIC 指定初始帮助菜单SET TRBETWEEN 设置是否跟踪每行程序SET UDFPARMS 设置调用UDF时参数的传递方法SET UNIQUE 设置索引中是否包含同关键字记录SET VIEW 设置是否打开VIEW窗口SET WINDOW OF MEMO 设置备注字段的编辑窗口SHOW GET 重新显示@…GET目标SHOW GETS 重新显示@…GET项SHOW MENU 显示一条形菜单SHOW OBJECT 重新显示指定的@…GET项SHOW POPUP 显示一弹出式菜单SHOW WINDOW 显示一窗口SIZE POPUP 改变弹出式菜单尺寸SKIP 移动指针SORT 建立排序文件STORE 为内存变量赋值SUM 求和SUSPEND 挂起程序TEXT...ENDTEXT 输出文本行TOTAL 分类求和TYPE 显示文本文件内容UPDA TE 修改{己录USE 打开/关闭库文件WAIT 暂停执行程序,等待从键盘接收一个字符VF建立数据库的常用命令比较实用一、基本命令APPEND 在表的末尾添加一个或多个新记录APPEND FROM 从一个文件中读入记录,追加到当前表的尾部A VERAGE 计算数值表达式或字段的算术平均值BROWSE 打开浏览窗口,显示当前或选定表的记录CHANGE 显示要编辑的字段CLOSE 关闭各种类型的文件COPY STRUCTURE 用当前选择的表结构创建一个新的空自由表COPY TO ARRAY将当前选定表中的数据复制到数组COPY TO 用当前选定表的内容创建新文件COUNT 统计表中记录数目CREA TE 生成一个新的VisualFoxPro表CREA TE DA TABASE 创建并打开一个数据库DELETE 给要删除的记录做标记DELETE DA TABASE 从磁盘上删除数据库DELETE VIEW 从当前数据库中删除一个SQL视图DISPLAY在VisualFoxPro主窗口或用户自定义窗口中显示与当前表有关的信息DISPLAY DA TABASE 显示有关当前数据库的信息,或当前数据库中的字段、命名连接、表或视图的信息DISPLAY MEMORY显示内存变量和数组的当前内容DISPLAY STRUCTURE 显示一个表文件的结构DISPLAY VIEWS 显示当前数据库中关于SQL视图的信息以及SQL视图是否基于本地或远程表的信息DROP TABLE 把一个表从数据库中移出,并从磁盘中删除它DROP VIEW 从当前数据库中删除指定的SQL视图FIND 查找记录GO|GOTO 将记录指针移动到指定记录上INSERT 插入记录JOIN 将两个数据库文件合并LIST 连续显示表或环境信息LIST DA TABASE 连续显示有关当前数据库的信息LOCA TE 按顺序搜索表从而找到满足指定逻辑表达式的第一个记录MODIFY DA TABASE 打开数据库设计器,让你能够交互地修改当前数据库MODIFY STRUCTURE 显示表设计器MODIFY VIEW 显示视图设计器OPEN DA TABASE 打开一个数据库PACK 从当前表中永久删除标有删除标记的记录RECALL 恢复所选表中带有删除标记的记录SCAN...ENDSCAN 运行扫描数据表文件SCA TTER 从当前记录中把数据复制到一组内存变量或数组中SEEK 查找记录命令SELECT 激活指定工作区SET DELETED 指定VisualFoxPro是否处理标有删除标记的记录,以及其他命令是否可以操作它们SET INDEX 打开一个或多个索引文件,供当前表使用;SET RELA TION 在两个打开的表之间建立关系SKIP 使记录指针在表中向前移动或向后移动SUM 对当前选定表的指定数值字段或全部数值字段进行求和TOTAL 计算当前选定表中数值字段的总和UPDA TE 更新数据库文件的记录USE 打开一个表及其相关索引文件,或打开一个SQL视图ZAP 从表中删除所有记桌,只留下表的结构二、索引及排序命令COPY INDEXES 从单项索引.IDX文件创建复合索引标识DELETE TAG 从复合索引(.CDX)文件中删除标识INDEX 创建一个索引文件,利用该文件可以按某种逻辑顺序显示和访问表记录SET ORDER 指定表的主控索引文件或标识SORT 对当前选定表进行捧序,井将捧过序的记录输出到新表中三、Visual FoxPro环境设定命令DISPLAY STA TUS 显示VisualFoxPro环境的状态四、SET 设定命令SET CONSOLE 激活或废止从程序中向V isualFoxPro主窗口或活动的用户自定义窗口的输出SET DEFAULT 指定默认的驱动器、目录或文件夹SET DEVICE 将@…SAY的输出结果定向到屏幕、打印机或文件SET EXACT 指定比较不同长度两个字符串时,VisualFoxPro使用的规则SET PA TH 指定查找文件的路径SET SAFETY设定确认模式SET TALK 决定VisualFoxPro是否显示命令结果五、Visual FoxPro文件管理命令COPY FILE 复制任何类型的文件DELETE FILE 从磁盘上删除文件RENAME 把文件名称更改为一个新名称TYPE 显示文件的内容六、Visual FoxPro输入输出命令?|?? 计算表达式的值,并输出计算结果\|\\ 文字直接输出命令CLEAR 从内存中释放指定项CREA TE FORM 打开表单设计器DIR或DIRECTORY显示目录或文件夹中文件的信息DO FORM 运行用表单设计器创建的、编译过的表单或表单集INPUT 由用户输入数据MODIFY FORM 打开表单设计器,从中可以修改或创建一个表单MODIFY QUERY打开查询设计器,从中可以修改或创建一个查询MODIFY SCREEN 打开表单设计器READ 读取已建立的对象七、Visual FoxPro菜单命令DEFINE MENU 创建菜单栏DEFINE PAD 在用户自定义菜单栏或Ⅵsu81FoxPro系统菜单栏上创建一个菜单标题MENU 建立菜单MENU TO 启动菜单MODIFY MENU 打开菜单设计器,从中可以修改或创建菜单系统八、Visual FoxPro打印命令MODIFY REPORT 打开报表设计器,从中可以修改或创建一个报表SET PRINTER 打开或者关闭向打印机的输出,或将结果输出到一个文件、端口九、Visual FoxPro程序管理命令&& 标明程序文件中非执行的内部注释的开始* 标明程序文件中非执行的注释行的开始CANCEL 结束当前VisualFoxPro程序的执行DECLARE 创建一维或二维数组DIMENSION 创建一维或二维内存变量数组'DOCASE...ENDCASE 分支判断命令DO 执行一个V isualFoxPro程序或过程DOWHILE...ENDDO 循环语句EXIT 从DOWHILE、FOR或SCAN循环中退出FOR...ENDFOR 循环语句IF…ENDIF 判断语句MODIFY COMMAND 打开一个编辑窗口,从中可以修改或创建程序文件PARAMETERS 将调用程序传来的数据赋值给私有内存变量或数组PRIV A TE 在当前程序中隐藏指定的、在调用程序中定义的内存变量或数组PROCEDURE 用在程序文件中标识一个过程的开始PUBLIC 定义全局内存变量或数组QUIT 结束当前V isualFoxPro工作期,并将控制权返回给操作系统RELEASE 从内存中删除内存变量和数组RESTORE FROM 恢复保存在内存变量文件或备注字段中的内存变量和内存变量数组,并把它们放回到内存中RETURN 将程序控制返回给调用程序SA VE TO 把当前内存变量和数组保存到内存变量文件或备注字段中SET PROCEDURE 打开过程文件WAIT 显示信息并暂停V isualFoxPro的执行,按某个键或单击鼠标后继续执行十、Visual FoxPro日期及时间命令SET DA TE 指定日期表达式和日期时间表达式的显示格式十一、Visual FoxProSQL命令ALTER TABLE-SQL 以编程方式修改表的结构DELETE-SQL 给要删除的记录做标记INSERT-SQL 在表尾追加一个包含指定字段值的记录SELECT-SQL 从一个或多个表中检索数据UPDA TE-SQL 以新值更新表中的记录十二、Visual FoxPro类及程序库命令DEFINE CLASS 创建一个用户自定义类或子类,并为创建的类或子类指定属性、事件和方法DISPLAY OBJECTS 显示有关一个对象或一组对象的信息MODIFY CLASS 打开类设计器,让用户修改已有的类定义或创建新的类定义十三、Visual FoxPro项目文件及其他命令MODIFY PROJECT 打开项目管理器,从中可以修改或创建一个项目文件。
第二章 VFP的常量、变量和表达式

第二章 VFP的常量、变量和表达式2.1 常量................................................................................................. 错误!未定义书签。
2.2 变量................................................................................................. 错误!未定义书签。
2.3 表达式............................................................................................. 错误!未定义书签。
2.1 常量常量就是固定不变的数据,VFP主要支持六种类型的常数:字符常数、日期常数、逻辑常数、数值常数、货币常数和日期时间常数。
VFP有两种类型的数值:N(数值)和F(浮点数)。
全部数值常数只是N型(不是F型),即是整型数和实型数(包含小数的为实型数)。
VFP数值的有效位数不能超过16位。
例如:-8.63,等。
其数值范围是-.E+19至.E+20(内存中8个字节,表中1到20个字节)。
字符常数(有时叫字符串),包括所有可打印的ASCII字符以及空格符,还包括所有汉字系统可打印的汉字和各种符号,使用时须用单引号或双引号或方括号括起来。
例如:[迎新春佳节],"Single数54","成都:ˋ十一ˊ庆祝会" 等。
VFP的字符常数有“任何字符均合法”的特点,比如它可以插入二进制0进入字串(不象大多数xBASE语言以二进制0作为字符串的结束),从而保持了字符串中实际字符数的情况,它还可以键入带音乐符号的字符和图形字符等。
VFP可达2G字符,由引号符引上。
VFP的日期常数以8位mm/dd/yy即月/日/年的形式出现,比如06/25/95,也可以yy.mm.dd等多种形式出现。
VFP函数和操作命令

•求整函数–int (<数值表达式>) 功能:返回整数部分–Ceiling (<数值表达式>) 功能:返回大于或等于它的最小数–floor (<数值表达式>)功能:返回小于或大于它的最大数•四舍五入函数–round (<数值表达式1>,<数值表达式2>)•求字符串函数–len (<字符表达式>) 功能:返回指定字符表达式值的长度•大小写转换函数–lower (<字符表达式>) 功能:字母转成小写,字符不变–Upper (<字符表达式>)功能:字母转成大写,字符不变•空格字符串生成函数–space(<数值表达式>)功能:返回由指定数目的空格组成的字符串。
•删除前后空格函数–rtrim (<字符表达式>)功能:去掉尾部空格后形成的字符串–Ltrim (<字符表达式>)功能:去掉前导空格后形成的字符串–alltrim (<字符表达式>)功能:去掉前导和尾部空格形成的字符串•求子串函数–left (<字符表达式>,<长度>) 功能:取左边–Right (<字符表达式>,<长度>)功能:取右边–substr (<字符表达式>,<起始位置>,<长度>) 功能:从起始开始取起,作为函数值•日期和时间函数–date () 功能:返回系统当前日期,函数值:日期型–Time () 功能:以hh:mm:ss格式返回当前时间,为字符型–Datetime () 功能:返回当前日期时间,函数值:日期型•求年份、月份、天数函数(返回值:数值型)–year (<日期表达式>|<日期时间表达式>):从指定日期当中返回年份–Month (<日期表达式>|<日期时间表达式>):从指定日期当中返回月份–Day (<日期表达式>|<日期时间表达式>):从指定日期当中返回天数•时、分、秒函数(函数值:数值型)–hour (<日期时间表达式>) 功能:返回小时部分–Minute (<日期时间表达式>)功能:返回分钟部分–Sec (<日期时间表达式>)功能:返回秒数部分•数值转换成字符串–str (<数值表达式>[,<长度>[,<小数位数>]]):将<数值表达式>的值转成字符串,转换时根据需要自动四舍五入。
VFP常用函数大全

Visual Foxpro 常用函数数值函数:1.绝对值和符号函数格式:ABS(<数值表达式>)SIGN(<数值表达式>)例如:ABS(-5)=5,ABS(4)=4,SIGN(8)=1,SIGN(-3)=-1,SIGN(0)=02.求平方根表达式格式:SQRT(<数值表达式>)例如:SQRT(16)=4,它与开二分之一次方等同。
3.圆周率函数格式:PI()4.求整数函数格式:INT(<数值表达式>)返回数值表达式的整数部分CEILING(<数值表达式>)返回大于或等于表达式的最小整数FLOOR(<数值表达式>)返回小于或等于表达式的最大整数例如:INT(5.8)=5.8,INT(-7.8)=-7,CEILING(6.4)=7,CEILING(-5.9)=-5FLOOR(9.9)=95.四舍五入函数格式:ROUND(<数值表达式1>,<数值表达式2>)功能:返回制定表达式在制定位置四舍五入的结果例如:ROUND(345.345,2)=345.35,ROUND(345.345,1)=345.3,ROUND(345.345,0)=345,ROUND(345.345,-1)=3506.求余函数格式:MOD(<数值表达式1>,<数值表达式2>)例如:MOD(10,3)=1 MOD(10,-3)=-2 MOD(-10,3)=2 MOD(-10,-3)=-1求余数的规律:1.首先按照两数的绝对值求余2.表达式1的绝对值大于表达式2的绝对值,则余数为表达式1的值3.余数取表达式1的正负号4.若两数异好号,余数在加上表达式2的值为最终的结果7. 求最大值和最小值函数MAX(数值表达式列表)MIN (数值表达式列表)例如:MAX(2,3,5)=5 MAX(…2‟,‟12‟,‟05‟)=2MAX(…汽车‟,‟飞机‟,‟轮船‟)字符串比较的规律:字符串比较首先比较第一个字母,如果有结果那就不用在进行比较了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VFP中表达式、常量、 一.VFP中表达式、常量、变量 二.变量与数组操作 三.函数与函数操作
2010-9-3
中国医科大学计算机中心 徐东雨讲师
1
一、VFP中的表达式、常量、变量 VFP中的表达式、常量、 1.表达式 五种) (五种) 算术表达式 字符表达式 日期表达式 关系表达式 逻辑表达式
2010-9-3
中国医科大学计算机中心 徐东雨讲师
15
内存变量的操作
4. SAVE TO <文件名> [ all LIKE / EXCEPT 通配变 <文件名 文件名> 量名表] 量名表] 功能:将变量保存到磁盘文件中,扩展名为. Mem. 功能:将变量保存到磁盘文件中,扩展名为. Mem. 例如 save to blk save to blk all like A* (保存所有A字母开 保存所有A 头的变量到名为BLK的文件中,将产生blk.mem BLK的文件中 头的变量到名为BLK的文件中,将产生blk.mem 的磁盘文件。 的磁盘文件。
1. 字段变量;是数据库处理的最基本的变量,用字段 是数据库处理的最基本的变量,
名表示,有五种类型,C、N、L、D、M。 名表示,有五种类型,C、N、L、D、M。
2. 内存变量:是独立于表的临时工作单元。可随时给 是独立于表的临时工作单元。
变量赋值或释放。由名字、类型、宽度组成。类型分 变量赋值或释放。 名字、类型、宽度组成。 组成 N、C、D、L、M。
17
中国医科大学计算机中心 徐东雨讲师
数组变量的操作
数组的定义; 数组的定义;
dimension <数组名>(数字表达式), <数组名>(数字表达式)… 定义数组名,维数及各维的大小。 功能 定义数组名,维数及各维的大小。 b(3,4 例如 dime a(20), b(3,4) 定义了一维数组A 说明 定义了一维数组A数组 A(1), A(2), a(3) , a(4), a(5) … a(20) 定义了二维数组B 定义了二维数组B数组 b(1,1), b(1,2), b(1,3), b(1,4) b(1,4) b(2,1), b(2,2), b(2,3), b(2,4) b(2,4) b(3,1), b(3,2), b(3,3), b(3,4) b(3,4)
“abcdefg
2010-9-3
中国医科大学计算机中心 徐东雨讲师
4
3.日期表达式
由算术运算符+、-,算术表达式、日期常量、 由算术运算符+、-,算术表达式、日期常量、 +、-,算术表达式 变量、函数组成。 变量、函数组成。 例如 ?Date() +15 ?Date() -15 ?ctod(“01/25/2005 ) ctod(“01/10/2005 01/10/2005”) ?ctod( 01/25/2005”)-ctod( 01/10/2005 ) 01/25/2005 结果等于 15
2010-9-3 中国医科大学计算机中心 徐东雨讲师 21
6.最大值函数 6.最大值函数 MAX(N1,N2) 求两个数字表达式中最 大值,也可以比较字符型或日期型值。 大值,也可以比较字符型或日期型值。 ?max(123,342) 342 Max(“fish” cat” ?Max(“fish”,“cat”) fish 7.最小值函数 7.最小值函数 MIN(N1,N2) 求两个数字表达式中最 小值,也可以比较字符型或日期型值。 小值,也可以比较字符型或日期型值。 ?min(123,342) 123 (“fish fish”, cat cat”) ?Min ( fish ,“cat ) cat 8.求余数函数 n1/n2的余数 8.求余数函数 MOD(N1,N2) 求n1/n2的余数 ?MOD(10,3) 1 9.舍入函数 舍入函数ROUND(N,M) 求对N保留M位小数, 9.舍入函数ROUND(N,M) 求对N保留M位小数,有 4舍5入 ?Round(1.5678,2) 1.57
2010-9-3 中国医科大学计算机中心 徐东雨讲师 13
内存变量的操作
2. 内存变量的显示; 内存变量的显示; 命令格式一 LIST 例 list memo ? <变量名表> <变量名表> 变量名表 ?? <变量名表> <变量名表 变量名表> 例如 name=“张山” name=“张山” 张山 nl=12 ? “姓名”,Name,“年龄”,nl “姓名” Name,“年龄 年龄” 姓名
restore from blk disp memo restore from blk disp memo
2010-9-3
(有50个变量) (有50个变量) 个变量 (显量) addi (有50个变量) (有50个变量 个变量) (显示 (显示55个变量) 显示5 个变量)
4.日期常数 4.日期常数
{月 / 日 / 年 } 一般格式 04/12/2005} 例如 {04/12/2005}
中国医科大学计算机中心 徐东雨讲师 10
2010-9-3
三、变量与数组操作
变量( 变量(3种)
运算中可以改变的量称为变量,用变量名来标识。 运算中可以改变的量称为变量,用变量名来标识。
B 2 4 AC
a+b ab cd c+d
2010-9-3
(a+b)/(c*d)*(a* (a+b)/(c*d)*(a*b)/(c+d)
3
中国医科大学计算机中心 徐东雨讲师
2. 字符表达式
字符串定界符: abc” abc’、[abc abc] 字符串定界符:“abc”、 ‘abc’、[abc] 字符运算符: 有两个: 字符运算符: 有两个:+和- 运算 例如 ? “abcd abcd ? “abcd abcd ”+ “efg + efg” ”- “efg - efg” 结果 “abcd abcd efg” efg ”
2010-9-3 中国医科大学计算机中心 徐东雨讲师 6
5.逻辑表达式
由关系表达式、逻辑运算符、变量、函数组成。 由关系表达式、逻辑运算符、变量、函数组成。 一般格式为: 一般格式为: <关系表达式1><逻辑运算符><关系表达式2> 关系表达式1 逻辑运算符> 关系表达式2 结果; 结果;真值 .T. 或 假值 .F. 表示 .NOT. .NOT. 逻辑非 逻辑运算符 .AND. .AND. 逻辑与 .OR. 逻辑或 算术运算、 运算优先级 一级 算术运算、字符串运算 二级 关系运算 三级 逻辑运算 表达式运算次序 按照运算符的优先级进行运算。 按照运算符的优先级进行运算。
2010-9-3 中国医科大学计算机中心 徐东雨讲师 7
二、VFP中的常量 VFP VFP中的常量也称 四种) VFP中的常量也称常数(四种) 1. 数字常数 2. 字符常数 3. 逻辑常数 4. 日期常数
2010-9-3 中国医科大学计算机中心 王世伟教授 8
1. 数字常数
由正负号、数字、小数点组成。 由正负号、数字、小数点组成。 123 -34.5 76 例如 0.67
2010-9-3 中国医科大学计算机中心 徐东雨讲师 19
三、 VFP的函数操作 VFP的函数操作
VFP中函数是一种可以运行的特殊运算, VFP中函数是一种可以运行的特殊运算,并立即给出 中函数是一种可以运行的特殊运算 函数值。 函数值。 函数的一般形式;函数名( 函数的一般形式;函数名(自变量表) 如开平方 ? SQRT (123) 输出结果 11.09 vfp提供六大类73个函数 vfp提供六大类73个函数 提供六大类 算术运算函数、字符函数、 算术运算函数、字符函数、日期时间函数 类型转换函数、测试函数、 类型转换函数、测试函数、标识函数 。
2010-9-3 18
中国医科大学计算机中心 徐东雨讲师
数组变量的操作
数组的赋值; 数组的赋值; store <表达式> to 数组名(下标) 表达式> 数组名(下标)
数组名(下标) <表达式 数组名(下标) = <表达式> 表达式>
例如 dime a(4), b(3,4) b(3,4 A(1)=12 A(2)=“ok” store 3*5 to b(1,1) , b(2,1) ? A(1),A(2),B(1,1),B(2,1)
3. 数组变量:也称下标变量,由数组名和括号内的下标 也称下标变量,
组成。其中下标也可以是变量或表达式. 组成。其中下标也可以是变量或表达式. 例如
2010-9-3
A(20)
B(5,10)
C( 2+8)
D(x)
12
中国医科大学计算机中心 徐东雨讲师
内存变量的操作
1. 内存变量的赋值操作; 内存变量的赋值操作; <表达式 表达式> <变量名表 变量名表> 命令格式一 STORE <表达式> TO <变量名表> 例 STOR 3*5 TO A,B,C,D STOR “中国医大” to xm “中国医大 中国医大” <变量名> = <表达式> 变量名> <表达式 表达式> 命令格式二 name=“张山 name=“张山” 张山” aa=12 b=aa+15 c=.t. d=ctod(“03/15/2005”)
2010-9-3
中国医科大学计算机中心 徐东雨讲师
16
内存变量的操作
5. 内存变量的恢复; 内存变量的恢复;
命令格式 RESTORE FROM <文件名> [ADDITIVE] <文件名 文件名> 功能;打开磁盘上的变量文件, 功能;打开磁盘上的变量文件,将变量恢复并替换到内存变量 如用ADDITIVE参数则全部追加到内存变量 参数则全部追加 中。如用ADDITIVE参数则全部追加到内存变量 现有内存变量5 例如 现有内存变量5个;