版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、命令动词: <范围>fields<字段名表>for<条件>while<条件> to printerprompt/to file <文件名>nooptimizeoff 1、 <范围>子句: all: next n:只对从当前记录开始的连续若干个(n)指定数目的记录进行操作。 record n:只对第n个记录进行操作 rest :只对从当前记录开始到表文件尾为止的所有记录进行操作2、FOR <条件>和WHILE<条件>子句的区别 FOR <条件>的作用是,在规定的范围内,按条件逐个检查所有记
2、录,即从<范围>内的第一个记录开始,若满足条件(即逻辑表达式<条件>的值为.T.)时,执行相应命令;不满足的就跳过去继续查找,直到该范围内的最后一条记录为止。WHILE<条件>的作用是,在规定的范围内,按条件逐个检查所有记录,即从<范围>内的第一个记录开始,若满足条件(即逻辑表达式<条件>的值为.T.)时,执行相应命令,并把记录指针下移一个记录,一旦遇到第一个不满足条件的记录(即逻辑表达式<条件>的值为.F.)时,就停止查找并结束该命令的执行。FOR <条件>和WHILE<条件>子句均实现对表的记录
3、筛选,完成关系的选择运算。3、FIELDS子句 该子句规定当前处理的字段,实现对表的字段筛选,完成关系的投影运算。create <路径文件名>create database <路径文件名>use <路径文件名>uselist/display/browse一、 记录的录入: 1、追加命令: appendblankin<工作区>/<别名>REPLACE <字段名表1> WITH <表达式1>,<字段名表2> WITH <表达式2>for<条件>2、插入命令:insertbefor
4、eblank3、append from <文件名>/?<范围>for<条件>while<条件>4、INSERT语句格式:INSERT INTO daf_name(fname1,fname2,.) VALUES (eExpression1,eExpression2,.) 二、记录指针定位 1、绝对移动 GO N GO TOP GO BOTTOM 2、相对移动 SKIP <N> SKIP 1 SKIP -1 三、表内容的编辑 1、浏览 BROWSE <范围>fields<字段名表>for<条件>whil
5、e<条件> 2、修改 (1) REPLACE <字段名表1> WITH <表达式1>,<字段名表2> WITH <表达式2>for<条件>(2)UPDATE语句格式:UPDATEDatabaseName1!TableName1 SET COLUMN_NAME1=eExpression1,COLUMN_NAME2=eExpression2,.WHERE FILTERCONDITION1AND|OR FILTERCONDITION2,. 3、删除(1) DELETE <范围>for<条件>while&l
6、t;条件>(2) DELETE FROM TABLENAME1 WHERE FILTERCONDITION1AND|OR FILTERCONDITION2,. PACK RECALL <范围>for<条件>while<条件> zap 一、排序 sort to <filenametable> on <fields1>,<fields2> /a/d/c <范围> for<条件>while<条件> fields<字段名表>/like<通配符>/except<
7、通配符> sort to px on 销售价格 ; fields like *饮料 二、索引 1、建立索引 index on <索引表达式> to <文件名> index on 姓名+str(身高,4,2) to sy 2、打开索引表 use <原表名> index <索引名> set index to <索引文件名> 3、重新建立索引文件 reindex 4、关闭索引文件 close indexes set index to三、查询1、find<字符表达式|数值> 找到:recno() found()->.t
8、. eof()->.f. 未找到:recno()àreccount()+1, found()à.f. eof()à.t.功能说明:收索已建立索引的表,查找满足条件的第一个记录。FIND命令只能查找字符型和数值型关键字。若是字符型数据,可以加定界符,亦可以不加定界符。<字符表达式>不能为空值,FIND命令要求当前选定的表已经建立索引,除非SET EXACT设置为OFF,否则与索引表达式的匹配应该是精确的。 2、seek<表达式> 功能说明:seek命令在一个表中收索首次出现的一个记录,这个记录的索引关键字必须与指定的表达式匹配。SEEK
9、的查找对象可以是常量、变量、表达式。若是字符表达式必须加定界符,可以是空字符串,也可以是数值型、逻辑型、日期型等各种类型的常量、变量、表达式。3、顺序查找命令 locate for <条件><范围>while<条件> 功能说明:按顺序搜索表,从而找到满足指定逻辑表达式的第一个记录,用于查找未索引或已索引的表文件 找到:RECNO(),FOUND()à.T. EOF()à.F. if found()4、继续查找 CONTINUE LOCATE命令发现一个满足条件的记录后,可执行CONTINUE,从而在表的剩余部分寻找其他满足条件的记录。四、
10、系统提供了三条在程序运行过程中从键盘接收数据的交互式命令语句:WAIT、ACCEPT、INPUT。两条简单的输出语句:?、?。1 单字符输入命令WAIT格式:WAIT <字符型表达式> TO<内存变量>功能:暂停程序运行,以<字符型表达式>的值作为提示信息,等待用户从键盘输入一个字符,然后继续运行程序。说明:WAIT命令只需输入一个字符,且不需回车键;若指定<字符型表达式>,将其值显示在屏幕上。否则,显示系统默认信息:Press any key to continue。如果命令行中有TO<内存变量>,生成字符型内存变量,并将键入的字符
11、存入该内存变量中。若键入的是回车键,或非打印字符,内存变量的内容将是一个空字符。如果命令中没有TO<内存变量>,不保存键入的字符。2 字符串输入命令ACCEPT格式:ACCEPT <字符型表达式> TO <内存变量>功能:暂停程序运行,以<字符型表达式>的值作为提示信息,等待用户从键盘输入一个字符串,然后继续运行程序。说明:用户从键盘输入的任何数据都被认为是字符串,输入内容不须加定界符,但必须用回车键结束。如果指定<字符型表达式>,它的值显示在屏幕上提醒用户,<字符型表达式>如果是字符串,必须用定界符括起来。若省略<
12、字符型表达式>,屏幕上不显示任何提示信息。3 数据输入命令INPUT格式:INPUT <字符型表达式> TO <内存变量>功能:暂停程序的运行,以<字符型表达式>的值作为提示信息,等待用户从键盘输入数据,并赋给指定的<内存变量>,然后继续运行程序。说明:输入的数据可以是数值型、字符型、日期型和逻辑型,如果输入的是数值或其表达式可以直接输入;如果是字符串必须加定界符;如果是逻辑值要以类似.T.逻辑值的形式输入;如果是日期型,可能通过CTOD函数转换或按日期常量格式输入。上述输入都以回车键作为输入的结束。若省略<字符型表达式>,屏幕
13、上不显示任何提示信息。INPUT与ACCEPT命令工作方式相似,区别是:(1)ACCEPT的数据总被当作字符型数据,而INPUT根据输入表达式的类型而确定。(2)用ACCEPT命令接受的字符串不需用定界符括起来,而INPUT命令接受的字符串需用定界符括起来 五、表的其他操作 1、记数命令格式:count to <内存变量> <范围>for<条件>while<条件>功能:统计表中的记录数目。 如果SET DELETE是OFF,则带有删除标记的记录也包括在记数中。USE 学生COUNT FOR SUBSTR(学号,3,1)=”3” TO A?A 2、
14、数字字段求和 sum <表达式表><范围>for<条件>while<条件> to<内存变量名表>/to array <数组名> 功能:对当前选定表的指定数值型字段或全部数值型字段进行求和。USE 工资SUM 基本工资,岗位津贴,实发金额 TO ?G1,G2,G3 3、求平均数命令 average <表达式表><范围>for<条件>while<条件>to<内存变量名表>/to array <数组名> 功能:对当前选定表的指定数值型字段或全部数值型字段进行
15、求算术平均值。如果SET TALK为ON,结果显示在屏幕上,如果SET HEADINGS为ON,字段名和包括字段名的表达式将显示在结果的上面。AVERAGE 单价 TO DJSET HEADINGS OFFAVERAGE 单价 TO DJSET HEADINGS ON 4、统计计算命令 calculate <表达式表><范围>for<条件>while<条件> to<内存变量名表>/to array <数组名> sqrt(strlen(str)+1) 功能:该文件对表文件的字段或字段表达式做统计计算。 <表达式表>
16、;可由下列函数任意组合而成 avg(<数值表达式>):按<条件>计算<数值表达式>的算术平均值。 sum(<数值表达式>):按<条件>计算<数值表达式>的和。 cnt():返回满足<条件>的记录数 min(<表达式>):返回表达式的最小值或最早值,该表达式可以是各种数据类型 max(<表达式>):返回表达式的最大值或最新值,该表达式可以是各种数据类型 CALCULATE AVG(基本工资),MIN(岗位津贴),MAX(实发金额) 5、分类求和命令 格式:total to <文件名&
17、gt; on <字段名> fields<字段名表><范围>for<条件>while<条件> 1、打开原表 use <files> 2、对原表建立索引 index 3、求和 total 4、想看求和结果?打开新生成的求和表 use <newfiles> browse set safety off/on 六、表内容的复制和大批量数据追加命令 1、表内容的复制 copy to <文件名> <范围>for<条件>while<条件>fields<字段名表>/li
18、ke<通配符>/except<通配符>withcdxtypefoxplus/fox2x/dif/mod/sdf/sylk/wk1/wks/wr1/wrk/xls/xl5/delimitedwith<分隔符>/with blank/with tab功能:用当前选定表的内容创建新文件。 2、大批量数据追加 append from <文件名>/? <范围>for<条件>while<条件> typefoxplus/fox2x/dif/mod/sdf/sylk/wk1/wks/wr1/wrk/xls/xl5 功能:从一个
19、文件中读入记录,添加到当前表的末尾。七、表结构文件的建立与应用 1、建立表结构 copy structure extended to <表结构文件> fields<字段名表> 功能:创建新表,它的字段包含当前选定表的结构信息 2、用表结构文件建立一个新表 create <表文件名>from<表结构文件名> 利用表结构文件可修改表结构,然后使用CREATE FROM命令创建一个不同结构的新表。COPY STRUCTURE EXTENDED和CREATE FROM可以用编程方式的方法更改表的结构。八、文件管理命令 1、列文件目录命令 DIR/DIRE
20、CTOTY ON<驱动器号>LIKE<路径><通配文件>TO PRINTERPROMPT/TO FILE<文件名> LIST FILES ON<驱动器号>LIKE<路径><通配文件>TO PRINTERPROMPT/TO FILE<文件名> DISPLAY FILES ON<驱动器号>LIKE<路径><通配文件>TO PRINTERPROMPT/TO FILE<文件名> 2、显示文件内容命令 type <文件名1> AUTOWRAPTO P
21、RINTERPROMPT/TO FILE <文件名2>NUMBER 3、复制磁盘文件命令 COPY FILE <原文件名> TO <目标文件名> 4、更改磁盘文件名命令 RENAME <原文件名> TO <目标文件名> 5、删除磁盘文件名命令 ERASE <文件名>/? DELETE FILE <文件名>/? 九、数组命令 1、将表的字段值传送到数组的语句格式:SCATTER FIELDS<字段名列表>/FIELDS LIKE<统配符>/FIELDS EXCEPT <统配符>
22、MEMO TO<数组名>/TO <数组名> BLANK/TO MEMVAR/TO MEMVAR BLANK/TO NAME<对象名>功能:将当前表中的当前记录全部或选中字段传送到指定数组或系统指定的数组(MEMVER)或指定对象 中。传送时备注字段和通用字段被忽略不传送,数组中的数据存放顺序以可传字段的值依次排列。2、将数组的值传送到字段的语句 格式:GATHER FROM <数组名>/ MEMVAR / NAME<对象名> FIELDS<字段名列表>/FIELDS LIKE<统配符>/FIELDS EXCEP
23、T <统配符>MEMO功能:将指定数组或系统指定的数组(MEMVER)或指定对象中的值传送到当前表中的当前记录全部或选中字段中。传送时备注字段和通用字段被忽略不传送,数组中的数据排列顺序依次传送到记录的指定字段中。十、建立表间的关联 一、表间的永久关系 1、建立:alter table <tablefilename1> add foreign key <关联关键字> tag <关联关键字> references <tablefilename2> 2、删除:alter table <tablefilename1> drop
24、foreign key <关联关键字> save 二、表之间的临时关系 3、set relation to <关系表达式1>into<工作区1>/<表别名1>,<关系表达式2>into<工作区2>/<表别名2>.in<工作区>/<表别名>additive 注解:(1)带<关系表达式>表示在父表和子表之间建立关联的关系表达式。 (2)into<工作区1>/<表别名1>指定子表的工作区编号或子表别名 (3)in<工作区>/<表别名>
25、指定父表的工作区编号或父表别名 (4)additive表示在建立新的关联时,保留当前工作区中已存在的表关联。在使用此命令时一定在子表上建立与<关系表达式>相匹配的结构复合索引或独立索引。 4、解除表间的临时性关联 格式:set relation off into <工作区1>/<表别名1>十一、SQL select语句格式:SELECTALL/DISTINCTAlias.SELECT_ITEMAS COLUMN_NAME,Alias.SELECT_ITEMAS COLUMN_NAME.;into table aaFROMforceinner/leftoute
26、r/rightouter/fullouterjiondatabasename!ta blelocal_aliason jioncondition.;into destination|to file filenameadditive/to printerprompt/to screenpreferfnce preferencenamenoconsoleplainnowaitWHERE jionconditionand jioncondition.and/or filterconditionand/or filtercondition.;GROUP BY groupcolumn,groupcolu
27、mn.having filterconditionunionallselectcommandORDER BY order_itemasc/desc,order_itemasc/desc.功能:(1)SELECT SELECT子句中指定需要在查询结果中要出现的常量、字段或表达式等。加ALL表示在查询结果中要包括所有满足检索条件的记录,也包括重复值;加DISTINCT表示在查询结果中有重复值的记录只出现一次。 (2)alias.select_item select_item表示查询结果中要出现的常量、字段或表达式。alias表示如果在查询结果中要出现多个相同名称的select_item,则需要加上
28、表的别名和“”加以区分。 (3)AS COLUMN_NAME 它指出在查询结果的列中使用的标题名称。 (4)FROM子句它给出在查询结果中以及在连接条件中涉及的表。 (5)databasename!table local_alias 如果包括TABLE表的数据库不是当前数据库,则需要用databasename!表名来表示;local_alias表示表的别名。 (6)INNER JION 它表示多表之间的内部联接。LEFTOUTERJION表示多表之间的左(外部)连接;RIGHTOUTERJION表示多表之间的右(外部)联接;fullouterjion表示多表之间的完全(外部)连接。 (7)in
29、to destination 表示将查询结果输出至临时表、表或内存变量数组中。其中, to file filename表示将查询结果输出到以filename为名称的ASCII文件、打印机或VFP窗口中;to printerprompt表示将查询结果输出到打印机中;to screen表示将查询结果输出到窗口中;如果同时选定INTO子句和TO子句,则 INTO子句优先。 (8)WHERE 它用于指定查询筛选条件和多表的连接条件等,WHERE之后为VFP的合法逻辑表达式。 (9)GROUP BY 用于对查询结果分组 (10)ORDER BY 用于对查询结果实现升/降序排列 (11)指定查询输出目标
30、浏览窗口:默认输出目标。 独立的表:INTO TABLE TABLENAME 临时表:INTO CURSOR CURSORNAME 数组:INTO ARRAY ARRAYNAME 活动窗口:INTO SCREEN二、INSERT、UPDATE、DELETE语句 1、INSERT语句格式:INSERT INTO daf_name(fname1,fname2,.) VALUES (eExpression1,eExpression2,.) 功能:向指定的表中添加一条记录,记录对应字段的取值要指明,在字段列表中未出现的字段将取空值。 Insert into xs(xh,xm,sex) value(99
31、1015,汪洋,.t.)2、UPDATE语句格式:UPDATEDatabaseName1!TableName1 SET COLUMN_NAME1=eExpression1,COLUMN_NAME2=eExpression2,.WHERE FILTERCONDITION1AND|OR FILTERCONDITION2,.功能:将指定表中指定字段的值设置成语句中给出的值,设置仅对满足WHERE子句中条件的记录进行。 3、DELETE语句格式:DELETE FROM DATABASENAME1!TABLENAME1 WHERE FILTERCONDITION1AND|OR FILTERCONDITI
32、ON2,. 功能:将指定的表中满足WHERE子句的记录加上删除标记,要真正从表中删除,必须使用PACK命令。 三、控件属性设置语句 1、设置容器中多个同类对象设置成同一属性:容器名.setall('属性',属性值,"指定类名") 2、同一对象同时设置多个不同属性值: WITH <对象名> .<语句序列>if <条件1>语句组1else if<条件2>语句组2else if<条件3>语句组3else语句组nendifENDWITH十一、程序结构if <条件>语句组1else语句组2endi
33、f1、 顺序结构2、 分支结构(1) IF <条件> 语句组 endif(2)do case case <条件1> 语句组1case <条件2> 语句组2case <条件3> 语句组3otherwise语句组nendcase3、 循环结构(1) DO WHILE <条件>循环语句组enddoA. 当循环次数不固定时 do while .t. 循环内部必须嵌套一个分支语句if <> _endifenddoB. 当循环次数固定时 do while n<=100 n=n+1 sum=sum+2n+1 _ n=n+1_ en
34、ddoC.处理对象是表中数据时 do while .not.eof() Skip enddo(2)for 变量初值 to 终值 step n 循环语句组 endfor(3)scan 循环语句组 endscanloopexit十一、 常用定位输入输出命令一、 输出:在屏幕或窗口的指定位置按指定的格式输出内容格式:行,列 say 表达式 size 数值,数值 font 字体,字号 color rgb()如:2,5 say padc(“说明”,20,”*”) size 2,5 color rgb(0,255,0,0,0,0)4,5 say “sdafsfd” size 2,5 font “隶书”,2
35、4 color rgb(0,255,0,0,0,0)4,5 say 1000 size 2,5 color rgb(0,255,0,0,0,0)use e:fdteachergo 56,7 say name7,7 say salary color 4/7+8,7 say “姓名:”+name 注:此处”+”不能改成”,”因say后只能接一个表达式l=259,7 say l注:表达式可以是常量(字符、数值、逻辑、日期),也可以是变量和函数,size及color rgb()可省略二、 输入:在屏幕或窗口的指定位置输出提示提示信息,并按指定的格式修改相关信息。格式:行,列 say 字符表达式 get
36、 变量 valid 条件表达式message 字符表达式 color rgb()read如:*modi comm Sjs4use e:fdteachergo 21,1 say “基本工资:” get salary message “不改请回车” color rgb(0,255,0,0,0,0)readdisplayuse*do sjs4modi comm sjs44l=243,10 say “重新输入?” get lread?l注:1、此例中定位输入语句含义:在第1行第1列的位置显示“基本工资”字符串,然后将当前记录(第2条)的salary值显示在该字符串后面,等待用户修改,用户可通过键盘输入
37、一个新值,按回车键结束,当程序向下运行过程中,遇到read语句时,系统将用新值替换原值,并存入salary字段(第2条记录)。但read语句并不一定要紧随该语句,且多个语句可共用一个read语句。2、say后面的表达式用于输出一个提示信息,valid及后面内容可省略。1、 定位输入语句后面必须要有read语句,不然新值不会更新原值,做完善程序题时要注意。2、 定位输入语句只能在程序中使用,不能直接在命令窗口中使用。3、 如果要设置字体、字号,必须为字符表达式和变量分别设置。如:2,3 say "姓名:" font "",24 get name font
38、"",24color语句只对字符表达式起作用,对变量不起作用。 十二、程序调用1、 过程文件的定义PROCEDURE <过程名>.endproc2、 过程文件的调用 调用过程文件之前必须要打开过程文件,调用后关闭过程文件。 打开:SET PROCEDURE TO <文件名> 关闭:SET PROCEDURE TO或 CLOSE PROCEDURE传送参数命令格式:DO <文件名> WITH <参数表达式列表> / <(参数表达式列表)> 接收参数命令格式:PARAMETERS <变量列表>3、 建立 M
39、ODIFY COMMAND <文件名>十三、变量的作用域1、自然属性:STORE 、= 、SUM、DIMENSION、DECLARE、INPUT等2、公用属性:PUBLIC<内存变量列表>3、私有属性:PRIVATE<内存变量列表>或PRIVATE ALL LIKE < 统配符>/EXCEPT<统配符>4、 本地属性:local <内存变量列表>利用内存变量的自然属性传递参数*P3A=”12345”B=YEAR(B)C=STR(C,1)D=56LISTMEMO LIKE ?RETURN*P2C=5A=A+CB=DATE()
40、LISTMEMO lIKE ?DO P3LIST MEMO LIKE ?RETURN*P1A=1B=”GOOD”LIST MEMO lIKE ?DO P2LIST MEMO LIKE ??K=A+STR(B,4)RETURN 利用内存变量的公用属性传递参数*P1PUBLIC A,BA=1B=”GOOD”LIST MEMO LIKE ?DO P2LIST MEMO LIKE ?RETURN*P2PUBLIC CC=ASTORE DATE() TO A,BLIST MEMO LIKE ?DO P3LIST MEMO LIKE ?RETURN*P3A=”12345”B=YEAR(B)C=STR(C,1)PUBLIC DD=56LIST MEMO LIKE ?RETURN*P1PUBLIC A,BA=1B=”GOOD”LISTMEMO IKE ?DO P2LISTMEMOlIKE ?RETURN*P2PRIVATE AC=12STORE DATE() TO A,BLISTMEMOLIKE?DO P3LIST MEMO LIKE ?RETURN*P3A=”12345”B=YEAR(B)C=STR(C,2)PRIVATE CSTORE 5 TO A,B,CLIST MEMO LIKE ?RETURN利用内存变量的私有属性传递参数利用内存变量的本地属性传递参数*P1PU
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 租赁 保洁 合同范例
- 租凭钢管合同范例
- 加工定做承揽合同范例
- 油田压裂砂合同范例
- 武汉轻工大学《机器学习与大数据》2023-2024学年第一学期期末试卷
- 托管生源转让合同范例
- 茶叶合同范例供货方
- 大平米房屋租赁合同范例
- 建设代理合同范例
- 培训机构学生合同范例
- 华为公司管理决策流程
- 车辆理赔权益转让协议
- (病理科)提高HE切片优良率PDCA
- 《我的家乡天津》课件
- 部编版四年级上册《麻雀》说课课件
- 操作规程仓管员发货员安全操作规程
- Creo-7.0基础教程-配套课件
- 全国火车站编码
- 监理分包合同协议书
- 小学数学(2023版)五年级上册课后习题月末综合训练二(含答案)【可编辑可打印】
- 代办身份证委托书海外
评论
0/150
提交评论