vf语句
VFP命令、函数及程序语句大全

VFP命令、函数及程序语句大全VFP命令、函数及程序语句大全.txt16生活,就是面对现实微笑,就是越过障碍注视未来;生活,就是用心灵之剪,在人生之路上裁出叶绿的枝头;生活,就是面对困惑或黑暗时,灵魂深处燃起豆大却明亮且微笑的灯展。
17过去与未来,都离自己很遥远,关键是抓住现在,抓住当前。
VFP命令、函数及程序语句大全(1)学过VFP(Microsoft Visual FoxPro)的朋友都知道它是微软公司开发的数据库管理系统。
它经历了从dBASE、FoxBASE、FoxPro直到VFP的发展过程。
本文便以VFP 6.0为例介绍它的命令、函数及程序语句,为学习VFP的朋友提供必要的学习参考,也为已经精通VFP的朋友提供复习的好机会。
一、主要命令:1、CREATE作用:建立一个新的表。
格式:CREATE [<文件>|?](注意,命令字符可取前面四个字符,后面可省略不写,即CREA,下同;中括号表示其中的参数是可选的;|管道符号表示两个参数只能选择一个,不能同时选择,下同。
)说明:文件指建立以.dbf为扩展名的VFP数据库文件,在命令后面加上一个问号表示系统会弹出对话框,要求用户输入想要建立的表名。
在命令中不加文件名或问号系统也会弹出对话框,要求用户输入想要建立的表名。
2、MODIFY STRUCTURE作用:显示表文件结构,并允许修改此表的结构。
格式:MODIFY STRUCTURE说明:只有在用USE命令打开表文件以后,才能显示或修改表文件的结构。
3、APPEND作用:在当前表的尾部(无论表中有无记录)追加记录(在当前表指当前正使用的表)。
格式:APPEND [BLANK]说明:在APPEND命令后面加上BLANK参数表示在当前表的尾部添加一条空白记录。
无BLANK 参数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。
4、INSERT作用:在表文件中间插入一个新记录。
VF常用命令

VF常用命令2007-09-16 19:42!命令功能:执行外部操作命令程序语法:RUN[/N [K> MS-DOSCommand|ProgramName 或者 ![/N [K>MS-DOSCommand|ProgramName$操作符功能:如果一个字符型表达式包含在另一个字符型表达式中返回真值(.T.),否则返回假值(.F.)语法:cSearchFor$cScarchIn(如果在cSearchIn中找到了cSearchFor则返回真)%操作符功能:返回一个数值型表达式除以另一个数值型表达式所得的余数。
语法:被除数%除数&操作符功能:执行宏替换语法:& VarName(内存变量名或数组元素名)?|??命令功能:计算机表达式的值,并输出计算结果。
???命令功能:把结果直接输出到打印机AADD TABLE 命令功能:在当前数据库中添加一个自由表语法:ADD TABLE TableNameALTER TABLE——SQL 命令功能:以编程方式修改表的结构语法:ALTER TABLE TableName1 (表名)ADD|ALTER [COLUMN]FieleName1 (ADD为添加字段名,后为修改字段名。
ADD改为DROP表示删除字段)FieldType[(nFieldSidth[,nPrecision])] (字段的类型、宽度和字段精度)[NULL | NOT NULL] (是否允许字段为空值)[CHECK 1Expression1 [ERROR cMessageText1> (指定了字段的有效性规则)[DEFAULT eExpression1] (指定了字段默认值)[PRIMARY KEY | UNIQUE] (指定了创建主索引标识,索引标识与字段同名)[REFERENCES TableName2 [TAG TagName1> (指定了与之建立永久关系的父表)APPEND 命令功能:在表的末尾添加一个或多个新记录语法:APPEND [BLANK] (添加一个空记录)[IN nWorkArea | cTableAlias] (指定要添加新记录的表所在的工作区|要添加新记录的表的别名)[NOMENU]APPEND FROM 命令功能:从一个文件中读入记录,添加到当前表的尾部。
VF命令及语句

第一部分VF命令及语句一、关于项目1、建立项目Create project 项目名称二、关于数据库1、建立数据库Create database 数据库名2、打开数据库Open database 数据库名3、打开数据库设计器Modify database 数据库名4、关闭数据库Close database5、删除数据库Delete database 数据库名三、数据表1、创建数据表(在数据库设计器中)Create 表名2、打开表Use 表名3、修改表的结构Use 表名Modify stru4、查看表的结构Use 表名List stru5、将自由表添加到数据库中Add table 表名6、将数据库中的表转为自由表Remove table 表名7、浏览表Use 表名Browse8、关闭表use9、操作表的相关命令Append:在表的尾部增加记录Insert:在表中任意位置插入记录Delete:逻辑删除记录Recall:恢复被逻辑删除的记录Pack:物理删除有逻辑标记的记录Zap:物理删除表中的所有记录Replace:修改记录Go(goto) top:将指针移到表的开头Go botton:将指针移到表的末尾Go N:将指针移到表的记录号为N的记录Skip N:若N为正数,指针从当前位置向下移动N条记录;若N为负数,指针从当前位置向上移动N条记录Locate for/continue:查找满足条件的记录,若找到,则执行continue命令继续查找,直到结束。
10、表的索引的建立要求先打开表,才能创建1)创建候选索引Index on 索引表达式tag 索引名candidate2) 创建普通索引Index on 索引表达式tag 索引名3)设置主控索引(将已建立的候选索引设置为主控索引)Set order to tag 候选索引名4)删除索引Delete tag 索引名11、创建报表1)Create report 报表文件名2)Modify report 报表文件名3)报表的预览Report form 报表文件名preview12、创建表单Create form 表单名13、创建或打开菜单Modify menu 菜单文件名运行菜单:do 菜单文件名.mpr第二部分SQL语句一、数据定义语句1、建数据表Create table 表名(字段名字段结构定义)注意,每个字段结构定义之间用分号隔开。
VF常用命令

VF常⽤命令VF常⽤命令2007-09-16 19:42!命令功能:执⾏外部操作命令程序语法:RUN[/N [K> MS-DOSCommand|ProgramName 或者 ![/N [K>MS-DOSCommand|ProgramName$操作符功能:如果⼀个字符型表达式包含在另⼀个字符型表达式中返回真值(.T.),否则返回假值(.F.)语法:cSearchFor$cScarchIn(如果在cSearchIn中找到了cSearchFor则返回真)%操作符功能:返回⼀个数值型表达式除以另⼀个数值型表达式所得的余数。
语法:被除数%除数&操作符功能:执⾏宏替换语法:& VarName(内存变量名或数组元素名)|命令功能:计算机表达式的值,并输出计算结果。
命令功能:把结果直接输出到打印机AADD TABLE 命令功能:在当前数据库中添加⼀个⾃由表语法:ADD TABLE TableNameALTER TABLE——SQL 命令功能:以编程⽅式修改表的结构语法:ALTER TABLE TableName1 (表名)ADD|ALTER [COLUMN]FieleName1 (ADD为添加字段名,后为修改字段名。
ADD改为DROP表⽰删除字段)FieldType[(nFieldSidth[,nPrecision])] (字段的类型、宽度和字段精度)[NULL | NOT NULL] (是否允许字段为空值)[CHECK 1Expression1 [ERROR cMessageText1> (指定了字段的有效性规则)[DEFAULT eExpression1] (指定了字段默认值)[PRIMARY KEY | UNIQUE] (指定了创建主索引标识,索引标识与字段同名)[REFERENCES TableName2 [TAG TagName1> (指定了与之建⽴永久关系的⽗表)APPEND 命令功能:在表的末尾添加⼀个或多个新记录语法:APPEND [BLANK] (添加⼀个空记录)[IN nWorkArea | cTableAlias] (指定要添加新记录的表所在的⼯作区|要添加新记录的表的别名)[NOMENU]APPEND FROM 命令功能:从⼀个⽂件中读⼊记录,添加到当前表的尾部。
用vf语言导excel的属性语句

方法一:Use**.dbfCopy To Excel333.Xls Type Xl5方法二:local myfieldyfilename=getfile("**.dbf")&&得到源表myoleapp=createobject("excel.application") &&创建OLE对象myoleapp.visible=.t.myoleapp.workbooks.adduse 1.dbf &&myfilenamefor i=1 to fcount()myoleapp.cells(1,i).value=field(i)endforscanfor i=1 to fcount()myfield=fields(i)myoleapp.cells(recno()+1,i).value=&myfieldendforendscanmyoleapp.quit还有没有其他的方法!--------------------------------------------------------------------------------1、_CLIPTEXT=''SELECT bh,xm FROM h:\gzkd\jzg INTO CURSOR ddSELECT ddCOPY TO dd1.txt sdf_CLIPTEXT =FILETOSTR('dd1.txt')2、SELECT qq,bh,xmold,dwold,xfgzold,zfgzold,bfold,xm,dw,xfgz,zfgz,bf FROM r:\temp\qwe INTO CURSOR dd_vfp.DataToClip('dd',,3)ZX = CREATEOBJECT('excel.application',' ')zx.ActiveSheet.Paste--------------------------------------------------------------------------------3Set oConnection = CreateObject("adodb.connection")Set dd = CreateObject("adodb.recordset")With oConnection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ThisWorkbook.FullName + ";Extended Properties='excel 8.0;HDR=YES;IMEX=1';Persist Security Info=False".OpenEnd Withdd.Open "select trim(订单号) as 订单号,count(*) as gs from [sheet1$] group by trim(订单号)", oConnection"select * from (select trim(订单号) as 订单号,count(*) as gs from [sheet1$] group by trim(订单号)) where gs=1", oConnectionSheets.AddSheets(1).Range("a1").CopyFromRecordset dd--------------------------------------------------------------------------------上述代码是VB的,略加修改即可在VFP下运行--------------------------------------------------------------------------------一般只用第1种方法(这是VFP的特长,其他开发工具没有VFP方便,都应该用方法2)--------------------------------------------------------------------------------VFP与EXCEL的几种交互编程方法一、EXECL驱动VFPEXECL内置的VBA语言(Visual Basic For Application)为EXECL功能的扩展提供了便利的手段,用户可使用该语言直接驱动VFP完成数据检索等功能。
计算机二级VF上机语句必过宝典

主意:仅供个人学习之用,勿用于商业用途作者:张友福疏漏、错误的地方请指正qq:754492411一.基本操作1,清除主屏幕ClearClear all2,通配符* :表示任意多个字符?:表示任意一个字符3系统日期和时间Date()返回当前系统日期(日期型)。
Time()以24小时制的hh:mm:ss格式返回当前系统时间(字符型)。
Datetime()返回当前系统日期时间(日期时间型)。
4建立数据库Create database <数据库名>5打开数据库Open database <数据库名>6删除数据库Delete database <数据库名>7建立程序文件Modify command<程序名>8执行文件Do <文件名>9创建表Create table<表名>(字段名字段类型(<长度>),字段名字段类型(<长度>),……)10打开表Use <表名>11创建表单Create form <表单名>二.表操作1创建表Create table<表名>(字段名字段类型(长度),字段名字段类型(长度),……) 字段名字段类型(长度) Primary key设置主关键字字段名Check <内容> 设置字段有效性规则Error <内容> 设置出错信息提示Default <内容> 设置默认值2删除表Drop table <表名> 逻辑删除Use <表名> 物理删除Zapuse3修改表结构Alter table <表名> add <字段名> 字段类型(长度) 增加一个新的字段Alter table <表名> alter字段名字段类型(长度) 修改已有字段Alter table <表名> alter<字段名> set check <表达式> 设置字段有效性规则Alter table <表名> default <内容> 设置默认值Alter table <表名> error<内容> 设置错误提示信息Alter table <表名> <字段名> 字段类型(长度)primary key设置主关键字Alter table <表名> rename <字段名> to <字段名> 更改字段名例1:为教师表的职工号字段增加有效性规则职工号的最左边四位字符是1102alter table教师表alter职工号set check left(职工号,4)="1102"例2:将score表的“成绩”字段的名称修改为“考试成绩”alter table score rename成绩to考试成绩4插入数据Insert into <表名>[(字段名,字段名,......)] values(记录值,记录值,……..) Insert into<表名> from array <数组名>从指定的数组中插入记录值5更新数据Update <表名> set <字段名>=<要更改的内容> [where <条件>]6删除数据Delete from <表名>[where <条件>] 逻辑删除Pack 物理删除例close alldelete from销售表where日期<={^2000-12-31}pack7直接修改Replace [all] <字段名> with <字段名>all 表示所有的字段记录,否则只修改一个记录注意:要先选定需要修改的表8建立表之间关系Set relation to <关键字> into <表名>9建立普通索引Index on <表达式> tag <索引名> 要先选中修改的表例:INDEX ON 客户号 TAG khh10建立候选索引Alter table <表名> add unique <表达式> tag <索引名>例:ALTER TABLE课程表ADD UNIQUE课程号TAG temp三.视图操作1创建视图Create view <视图名> as;<查询语句>2视图的删除Drop view <视图名>例1:创建视图CREATE VIEW SVIEW AS;SELECT Salarys.部门号, Salarys.雇员号, Salarys.姓名, Salarys.工资,;Salarys.补贴, Salarys.奖励, Salarys.失业保险, Salarys.医疗统筹,;Salarys.工资 + Salarys.补贴 + Salarys.奖励 - Salarys.失业保险;- Salarys.医疗统筹AS实发工资;FROM salary_db!salarys;ORDER BY Salarys.部门号 DESC四.查询语句1简单查询Select [Distinct]<字段名> ,<字段名> …; 。
vf中的sql语句大全
VFP的SQL命令和语句大全1.CREATE TABLE一般格式为:CREATE TABLE|dbf<表文件名>(字段名1字段类型[(字段宽度[,小数位数])][,字段名2字段类型[(字段宽度[,小数位数])]]……)例:CREATE TABLE xscj(xh c(8),xm c(6),xb c(2),;cj n(5,1),ksrq d)2.ALTER TABLE命令格式:添加字段ALTER TABLE xscj ADD COLUMN kcmc C(14)重命名字段ALTER TABLE xscj RENAME COLUMN kcmc TO kc删除字段ALTER TABLE xscj DROP COLUMN kc3.INSERT一般格式为:INSERT INTO<表名>[(字段名1[,字段名2…])]VALUES(表达式1[,表达式2…])例:INSERT INTO xscj(xh,xm,cj)VALUES("81991001","良",85.5)4.UPDATE命令格式:UPDATE<表名>SET字段1=表达式1[,字段2=表达式2…];WHERE条件表达式例:UPDATE xscj SET cj=cj*1.05WHERE cj>805.DELETE命令格式:DELETE FROM<表名>[WHERE条件表达式]例:DELETE FROM xscj WHERE cj<606.SELECT-SQL命令创建查询常用的格式:SELECT表名1.字段名1[AS标题名1],表名1.字段名2[AS标题名2],…FROM数据库名!表名1[,数据库名!表名2][,数据库名!表名3] [TO FILE文本文件名|into table|into cursor表文件名][WHERE选定条件][GROUP BY分组字段名][HAVING分组中的满足条件][ORDER BY排序字段名1[ASC|DESC][,排序字段名2[ASC|DESC]...]]示例:浏览学生中的查询学生student.qpr:SELECT表xs.xh as学号,表xs.xm as,表xs.xb as性别,;表xs.csrq as出生日期,表xs.bj as班级名称;FROM数据test!表xs;WHERE表xs.bj=cs1;ORDER BY表xs.xh;INTO TABLE xs浏览成绩中的按课程查询sub_cj.qpr:SELECT表xs.bj as班级名称,COUNT(表xs.xh)as班级人数,AVG(表cj.cj)as平均分,;MAX(表cj.cj)as最高分,MIN(表cj.cj)as最低分; FROM数据test!表xs,数据test!表cj,数据test!表kc;WHERE表cj.xh=表xs.xh;AND表kc.kcm=表cj.kcm;AND表cj.kcm=sc1;GROUP BY表xs.bj;ORDER BY表xs.bj;INTO TABLE sub_cj7.CREATE SQL VIEW命令创建视图打开数据库,用命令来创建视图:OPEN DATABASE数据库名CREATE SQL VIEW视图文件名AS SQL-SELECT语句例:OPEN DATABASE SJCREAT SQL VIEW SCORE AS SELECT SJCJ.XH,SJCJ.CJ;FROM SJ!SJCJ WHERE SJCJ.KCH=”计算机基础”8.CREATE TABLE-SQL命令创建数据库表命令一般格式:Create table表名1[free](字段名1字段类型代号[(字段宽度[,小数位数])][null|not null][check字段规则1[error“信息1”]][default默认值][primary key|unique][references表名2[tag索引标识1]][,字段名2字段类型代号[(字段宽度[,小数位数])][null|not null]][check字段规则2[error“信息2”]][default默认值])|from array数组名使用示例:creat data xscjgl&&创建学生成绩管理数据库create table xs(;xh c(4)default"1201"primary key,;xm c(6),;xb c(2)check xb="男"or xb="女"error"性别只能是男或女"default"女",;nl n(2)null;)&&创建学生表create table kc(;kch c(3)unique,;kcm c(10),;xf n(3,1),;bxk l;)&&创建课程表create table cj(;xh c(4)default"1201"reference xs tag xh,;kch c(8),;ksrq d,;cj n(5,1);)&&创建成绩表modi dataalter table cj add primary key xh+kch+str(cj,4,1)tag dh&&为成绩表添加一个主索引一、主要命令:1、CREATECREATE DATABASE库文件名.DBC―――建立数据库:CREATE TABLE/DBF表名(各个字段属性)¬¬¬¬¬¬¬¬¬¬¬¬¬¬—————建立表CREATE VIEW<视图名>AS<SELECT查询语句>——建立视图执行这个语句时,如果没有打开的数据库,则建立独立的视图,这样的视图不能存储。
VF常用命令及其格式
VF常用命令及其格式VF常用命令及其格式1、打开表命令:USE表文件名2、关闭表命令:USE、CLOSE ALL或USE3、记录指针定位命令:GO数值表达式(绝对移动)、SKIP(相对移动)4、替换(修改)记录命令:REPLACE字段1WITH表达式1,字段2WITH表达式2……[范围][FOR<条件>]5、复制表命令:COPY TO新文件名[FOR〈条件〉][范围]复制表结构命令:COPY STRU TO新表文件名[FIEL〈字段名表〉]6、建立索引命令:INDEX ON关键字段TO单索引文件名INDEX ON关键字段TAG索引标识名7、查询命令:(1)条件查询:LOCATE FOR〈条件〉继续查找命令:CONTINUE(2)索引查询:FIND字符表达式SEEK表达式继续查找命令:SKIP8、选择工作区命令:SELECT工作区号|别名9、建立表之间的关联命令:SET RELATION TO关联表达式INTO 别名10、表的更新命令:UPDATE ON关键字段FROM别名REPLACE字段1WITH表达式1,字段2WITH表达式2……[RANDOM]11、交互式输入命令:(1)INPUT[提示信息]TO内存变量(2)ACCEPT[提示信息]TO内存变量13、输出命令:?和??常用命令:1、设置默认路径命令:SET DEFA TO盘符:\路径2、关闭表命令:CLOSE TABLE,CLEAR ALL3、记录显示命令:LIST/DISP[范围][FOR〈条件〉]4、追加记录命令:(1)表尾追加:APPEND[BLANK](2)表中插入:INSERT[BEFORE][BLANK](3)从其他文件中追加多条记录到当前表:APPEND FROM文件名[FOR〈条件〉][FIEL<字段名表>]5、删除记录命令:DELE[范围][FOR<条件>]6、彻底删除带标记记录命令:PACK7、取消删除标记命令:RECALL[范围][FOR<条件>]8、物理删除表中所有记录命令:ZAP9、复制任何类型文件:COPY FILE〈文件名1〉TO〈文件名2〉10、将单个记录发送到数组:SCATTER TO〈数组名〉[FIEL〈字段名表〉]11、将数组中的值发送到当前记录命令:GATHER FROM数组名12、将表中多条记录传送到数组命令:COPY TO ARRAY数组名13、将二维数组中的值传送到表中:APPEND FROM ARRAY数组名14、表的排序命令:SORT ON〈字段1〉/A|/D,字段2/A|/D to 新表文件名15、打开索引文件命令:SET INDEX TO索引文件名表16、设置主控索引命令:SET ORDER TO单索引文件名|TAG索引标识17、更新索引文件命令:REINDEX18、关闭索引文件:SET INDEX TO、CLOSE INDEX、CLOSE ALL、CLEAR ALL、USE19、删除索引标识命令:DELE TAG索引标识名删除单索引文件命令:DELE FILE单索引文件名20、表的浏览命令:BROWSE21、记录的过滤命令:SET FILTER TO条件22、字段的过滤命令:SET FIELDSS TO字段名表23、表之间的连接命令:JOIN WITH别名TO新表文件名FOR条件24、设置一对多关系命令:SET SKIP TO别名25、数据库相关命令:打开:OPEN DATA数据库名新建:CREAT DATA数据库名修改:MODIDATE数据库名关闭:CLOSE DATA、CLOSE DATA ALL、CLOSE ALL、CLEAR ALL设置当前数据库命令:SET DATA TO数据库名26、程序相关命令:建立/修改程序:MODI COMMAND程序文件名运行程序:DO程序文件名27、内存变量/数组赋值命令:=、STORE28、交互式输入命令:@行,列SAY表达式GET变量29、文本输出命令:TEXT〈输出显示内容〉ENDTEXT30、终止程序执行命令:CANCEL、QUIT、RETURN31、清除主屏幕命令:CLEAR32、系统设置命令:(1)设置精确比较命令:SET EXACT ON/OFF(2)设置删除标记命令:SET DELE ON/OFF。
VFP常用命令语句
VFP常用命令语句本文便以VFP 6.0为例介绍它的命令、函数及程序语句,为学习VFP的朋友提供必要的学习参考,也为已经精通VFP的朋友提供复习的好机会。
一、主要命令:1、CREATE作用:建立一个新的表。
格式:CREATE [<文件>|?](注意,命令字符可取前面四个字符,后面可省略不写,即CREA,下同;中括号表示其中的参数是可选的;|管道符号表示两个参数只能选择一个,不能同时选择,下同。
)说明:文件指建立以.dbf为扩展名的VFP数据库文件,在命令后面加上一个问号表示系统会弹出对话框,要求用户输入想要建立的表名。
在命令中不加文件名或问号系统也会弹出对话框,要求用户输入想要建立的表名。
2、MODIFY STRUCTURE作用:显示表文件结构,并允许修改此表的结构。
格式:MODIFY STRUCTURE说明:只有在用USE命令打开表文件以后,才能显示或修改表文件的结构。
3、APPEND作用:在当前表的尾部(无论表中有无记录)追加记录(在当前表指当前正使用的表)。
格式:APPEND [BLANK]说明:在APPEND命令后面加上BLANK参数表示在当前表的尾部添加一条空白记录。
无BLANK参数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。
4、INSERT作用:在表文件中间插入一个新记录。
格式:INSERT [BEFORE] [BLANK]说明:INSERT 在当前记录后插入一记录;INSERT BEFORE 在当前记录前插入一记录;INSERT BEFORE BLANK 在当前记录前插入一空记录。
I NSERT - SQL命令追加记录INSERT INTO 表名[(字段1[,字段2…])];VALUES(表达式1[,表达式2…])例:INSERT INTO XS(XH,XM,XB,XIMING)VALUES(“950106”,“高山”,“男”,“”)5、UPDATE作用:修改数据update <表名> set <字段1=表达式1>,<字段2=表达式2...> where <条件>例: update <表名> set <字段1,字段2...>=<表达式1,表达式2...> where <条件>6、BROWSE作用:主要用于打开浏览窗口,查阅表文件并同时进行修改。
vf常用命令
vf常用命令vf常用命令注意:以下给大家列出的命令只是简单写了常用格式,其他使用方法请参考教材对应的描述或我课件中的例题。
重点命令:1、打开表命令:USE 表文件名教材2、关闭表命令:USE 、CLOSE ALL3、记录指针定位命令:GO 数值表达式(绝对移动)、SKIP(相对移动)4、替换(修改)记录命令:REPLACE 字段1 WITH 表达式1,字段2 WITH 表达式2……[范围][FOR<条件>]5、复制表命令:COPY TO 新文件名[FOR〈条件〉][范围]复制表结构命令:COPY STRU TO 新表文件名[FIEL 〈字段名表〉]6、建立索引命令:INDEX ON 关键字段TO 单索引文件名INDEX ON 关键字段TAG 索引标识名7、查询命令:(1)条件查询:LOCA TE FOR 〈条件〉继续查找命令:CONTINUE(2)索引查询:FIND 字符表达式SEEK 表达式继续查找命令:SKIP8、选择工作区命令:SELE 工作区号|别名9、建立表之间的关联命令:SET RELATION TO 关联表达式INTO 别名10、表的更新命令:参考我的课件第三章第五节关于表的更新部分UPDATE ON 关键字段FROM 别名REPLACE 字段1 WITH 表达式1,字段2 WITH 表达式2 ……[RANDOM] 11、交互式输入命令:(1)INPUT [提示信息] TO 内存变量(2)ACCEPT [提示信息] TO 内存变量13、输出命令:?和??常用命令:1、设置默认路径命令:SET DEFA TO 盘符:\路径2、关闭表命令:CLOSE TABLE,CLEAR ALL3、记录显示命令:LIST/DISP [范围][FOR 〈条件〉]4、追加记录命令:(1)表尾追加:APPEND [BLANK](2)表中插入:INSERT [BEFORE] [BLANK]P81 (3)从其他文件中追加多条记录到当前表:APPEND FROM 文件名[FOR〈条件〉][FIEL <字段名表>]5、删除记录命令:DELE [范围][FOR<条件>]6、彻底删除带标记记录命令:PACK7、取消删除标记命令:RECALL [范围][FOR<条件>]8、物理删除表中所有记录命令:ZAP9、复制任何类型文件:COPY FILE 〈文件名1〉TO 〈文件名2〉10、将单个记录发送到数组:SCA TTER TO 〈数组名〉[FIEL〈字段名表〉]11、将数组中的值发送到当前记录命令:GATHER FROM 数组名12、将表中多条记录传送到数组命令:COPY TO ARRAY 数组名13、将二维数组中的值传送到表中:APPEND FROM ARRAY 数组名14、表的排序命令:SORT ON 〈字段1〉/A|/D,字段2/A|/D to 新表文件名15、打开索引文件命令:SET INDEX TO 索引文件名表16、设置主控索引命令:SET ORDER TO 单索引文件名|TAG 索引标识17、更新索引文件命令:REINDEX18、关闭索引文件:SET INDEX TO 、CLOSE INDEX、CLOSE ALL、CLEAR ALL、USE P9219、删除索引标识命令:DELE TAG 索引标识名删除单索引文件命令:DELE FILE 单索引文件名20、表的浏览命令:BROWSE21、记录的过滤命令:SET FILTER TO 条件22、字段的过滤命令:SET FIELDSS TO 字段名表23、表之间的连接命令:JOIN WITH 别名TO 新表文件名FOR 条件24、设置一对多关系命令:SET SKIP TO 别名25、数据库相关命令:打开:OPEN DATA 数据库名新建:CREAT DATA 数据库名修改:MODI DA TE 数据库名关闭:CLOSE DATA、CLOSE DA TA ALL、CLOSE ALL、CLEAR ALL设置当前数据库命令:SET DA TA TO 数据库名26、程序相关命令:建立/修改程序:MODI COMMAND 程序文件名运行程序:DO 程序文件名27、内存变量/数组赋值命令:=、STORE28、交互式输入命令:@行,列SAY 表达式GET 变量29、文本输出命令:TEXT〈输出显示内容〉ENDTEXT30、终止程序执行命令:CANCEL、QUIT、RETURN31、清除主屏幕命令:CLEAR32、系统设置命令:(1)设置精确比较命令:SET EXACT ON/OFF(2)设置删除标记命令:SET DELE ON/OFFVF常用命令,大家有兴趣的来看看VF常用命令和程序命令一、主要命令:1、CREATE作用:建立一个新的表。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
set mark to [日期分隔符] set date to ameri(usa/ymd/dmy) ?另起一行显示变量值 ??不换行显示变量值
set century on/off/to [世纪值 rollover 年份参照值] on:4位年份 off:2位年份,>=年份参照值,则它所处世纪值为世纪值,否则为世纪值+1 set century to 19 rollover 10 ?ctod('11/01/12')则为1911.1.12 ?ctod('9/01/12')则为2009.1.12
set strictdate to [0/1/2] 0:不进行严格日期查询 1:进行,默认 2:进行,且ctod()和ctot()也有效
内存变量名=表达式 store 表达式 to 内存变量名表 当内存变量不存在时自动创建 当内存变量和字段变量同名时,用变量名访问则为字段变量,要访问内存变量要加上m.或m->
数组中各元素类型可以不同,下标从1开始 dimension/declare 数组名(下标上限1,下标上限2...) 数组创建后默认为.f. 在赋值和输入语句中用数组名,表将同一值赋给数组中所有元素
内存变量的显示: display/list memory [like 通配符(如*表任意多个字符。?表任意单个字符)][to printer/to file 文件名] list自动向上滚动,display分屏显示,按任意键继续显示下一页
内存清除 clear memory release 内存变量名 release all[extended]//extended是在程序中释放时用 release all[like 通配符/except 通配符]
表与数组间的数据传递 表->组 scatter [fields 字段名][memo] to 组名[blank] scatter [fields like 通配符/fields except 通配符][memo] to 组名[blank] 若没有fields则传递除备注型和通用型外的全部字段 blank则产生空数组,大小和各元素类型与表中当前记录对应的字段相同 组->表 gather from 组名[fileds 字段名][memo] gather from 组名[fileds like 通符/fileds except 通符][memo] 当组元素多于指定字段的个数,则多余的元素被忽略
异号求余,结果为两数相除的余数加上除数 +:两串首尾相连成新串 -:两串合并,并把前串尾部空格移到新串尾部 关系运符: "="受set exact on/off影响 on:补空格再精确比较 off:比较因右边的字符串结束而终止 "==":完全同才返回.t. "$":串1$串2若串1包含串2,则.t.
set collate to "排序名" 排序名:machine/pinyin/stroke笔划 逻辑非.not. 逻辑与.and. 逻辑或.or.
abs(表达式),sign(表达式)返回表达式符号1,-1,0表正负零,sqrt(表达式)求平方根,pi(), int(表达式)取整,ceiling(表达式)返回大于等于表达式的最小整数,floor(表达式)返回小于等于表达式的最大整数,round(表达式1,表达式2)表达式2为精确度,可以为负,mod(表达式1,表达式2),max(表达式1,表达式2...),min(表达式1,表达式2...),len(串),lower(表达式),upper(串),space(表达式)返回指定数目的空格字符串 trim(串)返回去掉尾部空格后的新串,ltrim(串)与trim相反,alltrim(串) left(串,长度),right(串,长度),substr(串,始处,长度) occurs(串1,串2)判断串1在串2中出现的次数,若不是串2子串则返回0,at(串1,串2,表达式)返回串1首字母在串2中第"表达式"次出现的位置,若没有则返回0,atc(串1,串2,表达式)与at类似,只是不区分大小写,表达式默认为1 stuff(串1,始处,长度,串2)用串2替换串1中指定的字串,若长度为0则为插入,若串2为空,则为删除 chrtran(串1,串2,串3)当串1的1个/多个相同字符与串2的某个字符相同,就用串3中的对应字符(与串2的那个字符有相同的位置)替换这些字符 x1=chrtran("abacad","acd","x12")//a换成xb换成1c换成2 x2=chrtran("大家好","大家","你") ?x1,x2 结果:xbx1x2,你好 like(串1,串2)所有字符都匹配才返回.t. date(),time(),datetime(),year(),month(),day(),hour(),minute(),sec() str(表达式[,长度][,小数位])将值转成串 返回的串长度包含小数点[L],若长度大于L则前导空格,若整数位数(包括负号)小于L,则自动调整精确度,反之返回一串*号 val(串)若串中有非数字字符,则只转换前面部分,首字符不是数字则返回0,忽略前导空格 ctod(日期表达式),ctot(日期时间表达式),dtoc(日期表达式/日期时间表达式[,1]),ttoc(日期表达式/日期时间表达式[,1])1表示串格式总为yyyymmdd但对ttoc()来说是yyyymmddhhmmss
&变量,取变量的值 between(表达式l, 表达式t,表达式h)判断是否lnull,lth类型要一致 isnull(表达式)空值=null ,empty(表达式)空值=”” vartype(表达式[,逻辑表达式])测表达式的类型,返回一个大写字母 C;char G:通用 N:number D:date Y:yuan T:time L:逻辑 X:null O:object U:undifine
beging of file:bof end of file: eof eof([工作区号/表别名])测试指针是否指向文件尾,若缺省自变量,则测试当前表文件,若在指定工作区间上没有打开表文件则返回.f.,若无记录则返回.t. bof([工作区号/表别名]) recno([工作区号/表别名])返回当前记录指针所指向的记录号,若没有打开表,返回0,若指针指向文件尾,则返回表文件记录数+1 recount([[工作区号/表别名]])返回记录个数,若无打开表则返回0,
iif(表达式1,, 表达式2, 表达式3)类似c的条件语句 deleted([工作区号/表别名])测试当前表/指定表的当前记录是否有删除标记“*”,有返回.t.. modify command 文件名//文件名可包括保存路径,系统会自动加上扩展名prg do 文件名//文件名若为有modify command产生的prg文件则可省略扩展名,其他的要写上,若没有指定,将按exe——app——fxp(vf编译版本)——prg(vf源程序文件) .dbc数据库文件 .dct备注文件 .dcx索引文件 .dbf表(如果有备注/通用型大字段,则会有一个.fpt文件) 备注型:用于存放个人简历等 通用型:ole(对象连接与嵌入)用于存放excel表等
input [提示] to 内存变量名//不可直接回车,在输入日期,字符,逻辑常量时要加相应的定界符,.f. {^1990-01-12} accept [提示] to 内存变量名//只接收字符串,不用加定界符,否则会一起算,直接回车赋空串给变量 wait [提示][to 内存变量][window[at 行,列]][nowait][clear/noclear][timeout 表达式]其中noclear则不关闭提示窗口,直到执行下一个wait window/wait clear if 条件 if 条件 do case do while 条件 。。。 语句1 case 条件1 循环体 endif else 语句2 语句1 enddo endif case 条件2 语句2 。。。。 otherwise 语句 endcase for 循环变量=初值 to 终值[step 步长]//步长可以为负 循环体 endfor/next
scan [范围][for 条件1][while 条件2]//范围:默认为all 循环体 endscan scan处理表中记录,他指明要处理记录的范围及满足条件
loop类似continue 。exit类似break if mod(n,i)<>0=====if mod(n,i)!=0
续行符: ; 注释: */note/&& cancal,do,return返回上级程序,quit
过程: procedure/function 过程名 parameter 参1[,参2。。。]/lparameter 参1[,参2.。。。]//前者看做函数建立的私有变量,后者看做局部变量。 函数体 [return 表达式] [endproc/endfunc]
do 文件名/过程名 with 实参1[,实参2.。。。]//格式1 文件名/过程名(实参1[,实参2.。。。])//格式2 形参不能少于实参,但可以多于实参,多出部分为.f.,格式1实参是常量/表达式,称为按值传递,是变量,则称为按引用传递,格式2默认是按值传递,如果实参是变量,可以通过 set udfparms to value/reference来设置传递方式 当实参是数组元素时,是按值传递,是数组名时,若是按值传递,则传第一个元素,按引用传递,则传整个数组。 public 变量名//只有执行clear memory/releasr/quit是才释放 在命令窗口中直接使用而由系统隐式建立的变量也是全局变量 在程序中直接使用而由系统隐式建立的变量为私有变量,作用域为建立他的模块及其下属模块 局部变量只能在建立他的模块中使用 ,且要先建立才能使用:local 变量名