VFP中常用命令.doc_第1页
VFP中常用命令.doc_第2页
VFP中常用命令.doc_第3页
VFP中常用命令.doc_第4页
VFP中常用命令.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VFP中常用命令一、数据库的建立、打开、关闭和删除建立数据库:CREATEDATABASEdatabasename|?从磁盘中删除数据库:DELETEDATABASEdatabasename|?打开数据库:OPENDATABASEEXCLUSIVE|SHAREDNOUPDATE打开数据库设计器(允许用户按交互方式编辑当前数据库):MODIFYDATABASEdatabasename|?指定的数据库databasename为当前数据库。指定当前的数据库:SETDATABASETOdatabasenameDatabasename必须为已经打开的数据库。如果省略数据库名称databasename,则不指定当前数据库(没有当前数据库)。关闭数据库:CLOSEDATABASEALL关闭当前数据库,如果带ALL子句,则关闭所有打开的数据库。二、数据表和视图的建立、打开、关闭和删除建立数据表(SQL命令):CREATETABLE|DBFtablename(Col_name1Type1NOTNULL/NULL,Col_name2Type2NOTNULL/NULL.)table_name是所创建的数据表的名字。Col_name1,Col_name2,.是表中列的名。Type1,Type2.是相应列的数据类型(VFP的数据类型见表3-9)。如果说明为NOTNULL,则列中不允许分配空值(这种情况下,列不能包含空值,如果插入空值,将返回错误信息)。向当前打开的数据库中添加数据表:ADDTABLEtablename|?从当前打开的数据库中删除数据表:REMOVETABLEtablename|?DELETE如果包含DELETE子句,将从磁盘中删除这个表文件,否则,只从数据库中删除,但文件仍保存在磁盘中。在当前打开的数据库中建立视图:CREATESQLVIEWviewnameASSELECT其中SELECT为SELECT语句。执行这个语句时,如果没有打开的数据库,则建立独立的视图,这样的视图不能存储。从当前打开的数据库中删除视图:DELETEVIEWviewname打开一个表:USEtablename|?IN工作区号将当前数据表与另一数据表连接后建立一个新表:JOINWITH工作区号|表别名TOtablenameFOR条件FIELDS字段名表三、数据表和表结构的编辑、修改打开浏览窗口(可在其中编辑数据表):BROWSW(详细格式见P.114116)打开并修改数据表中的字段:(1)CHANGEFIELDS字段名列表(2)EDITFIELDS字段名列表这两个命令的功能相似,可选子句较多(详见手册)。数据表改名:RENAMETABLEtablename1TOtablename2其中数据表tablename1必须存在且未打开。视图改名:RENAMEVIEWviewname1TOviewname2其中数据表tablename1必须存在且未打开。修改数据表结构(SQL命令):ALTERTABLEtablename;ADD字段名TypeNULL|NOTNULL,字段名TypeNULL|NOTNULL;ALTERCOLUMN字段名TypeNULL|NOTNULL;,字段名TypeNULL|NOTNULL.;DROP字段名,字段名,.将当前表与另一表之间建立关联:SETRELATIONTO表达式1INTO工作区号1|表别名1;,表达式2INTO工作区号2|表别名2,.建立关联的两个表必须事先已按关联表达式进行索引排序。在当前表与另一表之间建立一对多关联:SETSKIPTO表别名1,表别名2消除当前表与另一表之间的关联:SETRELATIONOFFINTO工作区号|表别名四、数据表中数据操作(查询、插入、删除和修改等)数据查询SELECT语句(SQL命令)格式见教材的有关章节。这是本课程的重点内容,必须很好地掌握。更改数据表中的记录:REPLACE字段1WITH表达式1ADDITIVE;,WITHADDITIVE,;FOR条件1WHILE条件2其中的ADDITIVE子句适用于备注字段,表示将表达式的值加在字段的末尾。用内存数组的值更新数据表中的记录:REPLACEFROMARRAY数组名FIELDS字段名列表常用子句用新的值更新表中的记录(SQL命令):UPDATEdatabasename!tablename;SETColumn_1=Expression1Column_2=expression2.;WHERECondition用一个表中的数据更新当前指定工作区中打开的表:UPDATEONfieldnameFROMfilename;REPLACEfieldname1WITHexpr1,fieldname2WITHexpr2,.给记录加删除标记(SQL命令):DELETEFROMdatabasename!tablename;WHERE条件给记录加删除标记:DELETE范围FOR条件WHILE条件;IN工作区号|表别名永久删除加了删除标记的记录:PACK永久删除打开的数据库中加了删除标记的记录:PACKDATABASE去掉删除标记(恢复)RECALL常用子句删除一个表中所有记录(保留表的结构):ZAPINtablename|alias为数据表文件追加记录:APPENDBLANKIN工作区号|别名从另一个文件中提取数据添加到当前数据表的尾部:APPENDFROMfilename|?FIELDS字段名列表FOR条件其中filename所指定的文件可以是数据表、EXCEL电子表格、文本文件等,如果不是数据表,需要其它子句指定格式(详见手册)。用内存数组的值添加到当前数据表的尾部:APPENDFROMARRAYarraynameFOR条件FIELDS字段名列表数据中的一行对应一个新记录,一列对应一个字段。从一个文件输入一个OLE对象放入一个通用(general)字段:APPENDGENERAL通用字段名FROMfilename如果省略子句FROMfilename,则将指定的字段清空。将一个文本文件的内容拷贝到一个备注字段:APPENDMEMO备注字段名FROMfilenameOVERWRITE如果省略子句FROMfilename,则将指定的字段清空。插入新记录(在当前记录之前或后插入):INSERTBLANKBEFORE如不省略BLANK,则插入一个空白记录,且不显示输入窗口。在表中插入新记录并赋值(SQL命令):INSERTINTOtablename(字段1,字段2,.)VALUES(eExpression1,eExpression2,.)或INSERTINTOtablenameFROMARRAYArrayName|FROMMEMVAR如带有FROMMEMVAR子句,则用同名的内存变量给字段赋值。清除当前记录中字段的数据:BLANK常用子句移动记录指针:SKIPnIN工作区号|表别名五、文件管理(文件和文件夹的复制、创建和删除)从当前表复制出表或其它类型的文件(表须打开)COPYTOfilenameFIELDS字段名列表常用子句其它子句如果没有指定类型,则复制一个与当前的表相同的数据表。复制表的结构COPYSTRUCTURETOfilenameFIELDS字段名列表复制任何文件:COPYFILE源文件TO目的文件如果用此命令复制表,表须关闭从磁盘上删除任意文件:(1)ERASEfilename|?(2)DELETEFILEfilename|?任意文件改名(或文件移动到另一文件夹):RENAMEfilename1TOfilename2其中filename1和filename2都可以包含路径。如二者不在同一文件夹,则将filename1移动到filename2所在的文件夹。显示一个文件夹中的文件信息:DIR|DIRECTORYONdrive从磁盘上删除一个文件夹:RD|REDIR文件夹名在磁盘上建立一个文件夹:MD|MKDIR文件夹名六、数据的复制与传送单个记录与数组间的数据传送当前记录数组或内存变量:SCATTERFIELDS字段名列表MEMOTO数组名BLANK|MEMVARBLANK其中BLANK表示建立一个空元素的数组。如果用MEMVAR子句,则表示将各字段的值复制到同名同类型的内存变量。如果包含MEMO子句,则备注字段一起复制。数组或内存变量当前记录GATHERFROM数组名|MEMVARFILEDS字段名列表MEMO用同名的内存变量或数组中的第一行置换当前记录,如果数组为多行的二维数组,也只用第一行。成批记录与数组间的数据传送表数组:COPYTOARRAYarrayname常用子句数组表:(1)APPENDFROMARRAYarraynameFOR条件FIELDS字段名列表用内存数组的值加在数据表的尾部,数据中的一行对应一个新记录,一列对应一个字段。(2)REPLACEFROMARRAY数组名常用子句用内存数组的值更新数据表中符合条件的记录。查询结果数组:SELECTINTOARRAYarrayname将SQLSELECT语句的查询结果传给数组arrayname。这里“SELECT”可为各种形式的SELECT查询语句。给内存变量赋值:STORE表达式TO变量名或变量名=表达式七、排序与索引将当前表排序后建立一个新数据表:SORTTO文件名ON字段名1/A|/D;/C字段名2/A|/D/C.;ASCENDING|DESCENDING常用子句;建立单索引文件:INDEXON表达式TO单索引文件名;FORUNIQUECOMPACT;ASCENDINGDESCENDINGADDITIVE建立复合索引文件:INDEXON表达式TOTAG索引名OF复合索引文件名;FOR条件UNIQUE|CANDIDATE;ASCENDINGDESCENDINGADDITIVE使用索引文件:打开表时将索引文件一并打开,USE命令带INDEX子句:USEtablename|?IN工作区号INDEX索引文件名列表|?给当前表打开一个或多个索引文件:SETINDEXTO索引文件名列表|?;ORDER索引文件名序号|索引文件名|TAG索引名OF复合索引文件名;ASCENDINGDESCENDING指定字符字段在排序或索引时的整理系列:SETCOLLATETO整理系列对于汉字字符串,“整理系列”可以是“Machine”、“PinYin”或“Stroke”三者之一(必须带引号),分别表示按机器码、拼音和笔划排序。指定当前表中的控制索引文件或标记:SETORDERTO;索引文件名序号|索引文件名|TAG索引名OF复合索引文件名;IN工作区号|表别名;ASCENDINGDESCENDING删除索引DELETETAGALLOF复合索引文件名DELETETAG索引标识1OF复合索引文件名1;,索引标识2OF复合索引文件名2八、查找和定位顺序查找当前表中满足条件的第一条记录:LOCATEFOR条件下范围WHILE条件找到后将记录指针定位在满足条件的第一条记录,且函数FOUND()的返回值为真。在索引表中查找:FINDcExpr其中cExpr为字符串表达式。如果找到,则记录指针定位在满足条件的第一条记录,且函数FOUND()的返回值为真;查找失败时,FOUND()的返回值为假,记录指针定位在文件尾。在索引表中查找:SEEKeExpr;ORDER索引文件名序号|索引文件名|TAG索引名OF复合索引文件名;ASCENDINGDESCENDING;IN工作区号|表别名如果找到,则记录指针定位在满足条件的第一条记录,且为真;查找失败时,FOUND()的返回值为假,记录指针定位在文件尾。继续查找:CONTINUE用LOCATE、FIND或SEEK查找到一条记录后,用CONTINUE继续查找下一条。用以上查找命令LOCATE、FIND、SEEK和CONTINUE的查找结果,都可以通过函数FOUND()的返回值反映出来。九、统计计算统计表中的记录数:COUNT范围FOR条件WHILE条件TO内存变量名统计满足条件的记录数,显示记录数或将结果赋给内存变量名。求和:SUM表达式列表;范围FOR条件WHILE条件TO内存变量名|TOARRAY数组名求平均值:AVERAGE表达式列表;范围FOR条件WHILE条件TO内存变量名|TOARRAY数组名对当前表中数值型字段进行分组求和:TOTALTOtablenameON字段名常用子句其中tablename为存放结果的表文件名,字段名为确定求和分组的字段。计算:CALCULATE表达式列表;范围FOR条件WHILE条件TO内存变量名|TOARRAY数组名其中表达式列表可以是如下函数的任意组合:AVG(nExpr),CNT(),MAX(eExpr),MIN(eExpr),NPV(nExpr1,nExpr2,),STD(nExpr),SUM(nExpr),VAR(nExpr)其中nExpr为数值表达式,eExpr为任意表达式。十、程序控制条件语句:IF条件THENELSEENDIF多分支语句:DOCASECASE逻辑表达式1CASE逻辑表达式2CASE逻辑表达式nOTHERWISEENDCASEDO循环:DOWHILE条件LOOPEXITENDDOFOR循环FOR循环变量=初值TO终值STEP步长(中间可插入LOOP或EXIT)ENDFOR|NEXT扫描循环(对一个表中满足条件的记录进行循环):SCAN范围FOR条件WHILE条件(中间可插入LOOP或EXIT)ENDSCAN集合扫描循环FOREACHVarINGroupCommandsEXITLOOPENDFOR|NEXTVar十一、其它定义数组:DECLARE|DIMENSION数组名(下标1,下标2,)定义过程:PROCEDURE过程名PARAMETERS参数表RETURNTOMASTER|TO程序名定义函数:FUNCTION函数名PARAMETERS参数表RETURN表达式调用一个子程序或过程DO子程序名|过程名IN程序文件名WITH实在参数表定义公共变量:PUBLIC变量名列表PUBLICARRAY数组名1(行1,列1),数组名2(行2,列2),定义私有变量PRIVATE变量名列表PRIVATEALLLIKE|EXCEPT通配符定义局部变量LOCAL变量名列表LOCALARRAY数组名1(行1,列1),数组名2(行2,列2),显示各种信息:LIST(格式见有关手册)DISPLAY(格式见有关手册)输出提示信息:WAITTO;WINDOWAT,NOWAIT;CLEAR|NOCLEAR;TIMEOUT各种设置命令:设置是否显示日期中的世纪:SETCENTURYON|OFF设置显示的小数位数:SETDECIMALSTO小数位数设置是否处理带删除标记的记录:SETDELETEDON|OFF如果设置为ON,则不处理带删除标记的记录。设置是否显示命令的结果:SETTALKON|OFF设置文件的搜索路径:SETPATHTO路径设置传给子程序或自定义函数的参数是按值还是按引用方式传递:SETUDFPARMSTOVALUE|REFERENCE如设置为TOVALUE,表示按值传递。执行一个外部命令或程序:RUN命令或程序在指定的位置显示或打印:行,列SAY在指定的位置显示表达式的值,并等待用户输入,将输入值赋给一变量:行,列SAY表达式GET变量名DEFAULT表达式READ例:2,2say请输入金额:getnMoneydefault50Read此例先在第2行、第2列显示请输入金额:,等待用户输入一个数值,将用户输入值赋给变量nMoney,如果用户不输入数值(直接按回车),则将50赋给nMoney。请注意在下一行不能漏掉“Read”。ALL:命令对表中所有记录起作用,即执行时从首记录到末记录,最记录指针停在数据库的末尾。NEXT命令作用于从当前记录开始到当前记录后条记录为止的范围内的记录,最后记录指针指向作用范围内的最后一条记录处。NEXT1表示仅作用于当前记录。Record命令作用于记录号为的记录。TEST命令作用范围从当前记录开始到表的最后一个记录为止命令中的FOR子句只作用于满足条件的记录。一、基本命令1.打开和关闭数据表USE当省略选项时为关闭当前数据表CLOSEALL关闭所有数据表2.选择当前工作区SELECT功能:选择当前工作区。可以直接选择工作区号,也可通过指定其中已经打开的数据表别名来指定工作区。SELECT0是选择当前未使用的最低编号的工作区3.增加记录APPENDBLANK在当前表的尾部追加一个空白记录INSERTBLANK在当前表的当前记录之后插入一条空白记录INSERTBLANKBEFORE在当前表的当前记录之前插入一条空白记录注意:在表建立索引后,INSERT的功能与APPEND相同4.替换字段的值REPLACE范围WITH,WITH,.WITHFOR功能:计算表达式的值,并填入指定字段,当范围和条件选项省略时只对当前记录操作。5.删除记录DELETE范围FOR条件功能:对记录加删除标记(即逻辑删除),当范围和条件选项省略时只对当前记录操作。RECALL范围FOR条件功能:对记录去除删除标记(即恢复删除),当范围和条件选项省略时只对当前记录操作。PACK功能:删除带有删除标记的记录ZAP功能:物理删除当前表所有记录6.建立索引与选择主控索引INDEXONTAGDESCENDING功能:对当前表按建立结构复合索引,索引文件名与表名相同,扩展名默认为CDX。DESCENDING选项为按关键字降序排列,默认为升序。SETORDERTOTAG功能:在结构复合索引文件打开后,指定主控索引标识符。7.记录指针定位GOBOTTOM|TOP|功能:移动记录指针直接指定记录。BOTTOM为指向末记录,TOP为指向首记录,为指向记录号为的记录。SKIPexpN功能:按expN的值,从当前位置出发移动记录指针。当expN为正时向尾部方向移动expN条记录,当expN为负时向首部方向移动expN条记录,当expN为1时可以省略。8.查找LOCATE范围FOR条件功能:在数据表的指定范围中搜索满足条件的第一个记录。搜索成功,记录指针指向该记录,并将FOUND()置为.T.;否则,记录指针指数据表末尾,并将FOUND()置为.F.。缺省为ALL。CONTINUE功能:查找下一个满足LOCATE命令指定条件的记录,查找成功,将FOUND()置为.T.并将指针指向满足条件的记录;否则,记录指针指数据表末尾,将FOUND()置为.F.。9.数据表复制COPYTO范围FIELDSFOR条件功能:把已打开的表内容复制到新的表中。缺省值为ALL。规定了新表字段,缺省为全部字段。COPYSTRUCTURETOFIELDS功能:把当前表的结构复制到新的表中。不复制记录。规定了新表字段,缺省为全部字段。10.统计COUNT范围FOR条件TO功能:统计表中满足条件的记录个数,并存入指定的内存变量。缺省时为ALLSUM表达式表范围FOR条件TO功能:统计表中全部的或指定数值字段的值的和,并各个和存入指定的内存变量,内存就是的个数求和的数值表达式个数相同

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论