版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、VFP的SQL命令和语句大全1.CREATE TABLE - SQL命令该命令的一般格式为: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 - SQL命令功能命令格式示例添加字段ALTER TABLE xscj ADD COLUMN kcmc C(14) 重命名字段 ALTER TABLE xscj RENAME COLUMN kcmc TO kc
2、删除字段 ALTER TABLE xscj DROP COLUMN kc3.INSERT-SQL命令该命令的一般格式为:INSERT INTO <表名>(字段名1,字段名2 ) VALUES (表达式1,表达式2 )例:INSERT INTO xscj(xh,xm,cj) VALUES ("81991001", "张良", 85.5)4.UPDATE-SQL 命令。命令格式: UPDATE <表名> SET 字段1 = 表达式1 ,字段2 = 表达式2 ;WHERE 条件表达式例: UPDATE xscj SET cj = cj*
3、1.05 WHERE cj>805.DELETE-SQL 命令。命令格式: 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 分组中的满足
4、条件 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(表c
5、j.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 语句
6、例: OPEN DATABASE SJ CREAT 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 字段类型代号 (字
7、段宽度 , 小数位数) 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 "女",
8、;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 &a
9、mp;& 为成绩表添加一个主索引一、主要命令:1、CREATECREATE DATABASE 库文件名.DBC建立数据库:CREATE TABLE/DBF 表名(各个字段属性)¬¬¬¬¬¬¬¬¬¬¬¬¬¬建立表CREATE VIEW <视图名> AS <SELECT 查询语句>建立视图执行这个语句时,如果没有打开的数据库,则建立独立的视图,这样的视图不能存储。2.DROP DROP VIEW <视图>删除视图3、
10、MODIFY STRUCTURE 作用:显示表文件结构,并允许修改此表的结构。格式:MODIFY STRUCTURE说明:只有在用USE命令打开表文件以后,才能显示或修改表文件的结构。4、APPEND作用:在当前表的尾部(无论表中有无记录)追加记录(在当前表指当前正使用的表)。格式:APPEND BLANK说明:在APPEND命令后面加上BLANK参数表示在当前表的尾部添加一条空白记录。无BLANK参数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。5、INSERT INSERT BLANK BEFORE 在当前表的当前记录之前插
11、入一条空白记录INSERT INTO 表名(字段 VALUES(表达式1,表达式2)插入记录INSERT INTO 表名 FROM ARRAY ArrayName | FROM MEMVAR如带有FROM MEMVAR子句,则用同名的内存变量给字段赋值。例:INSERT INTO 学生(XH,XM,XB)VALUES(“950106”,“高山”,“男”)6. ALTER TABLE 表名 ADD 字段名 字段类型(字段参数)添加字段ALTER TABLE 表名 ALTER 字段名 SET CHECK <条件>为字段添加有效性规则例:ALTER TABLE 评分 ALTER分数 SE
12、T CHECK 分数>=0 AND 分数<=10ALTER TABLE 表名 DROP 字段名ALTER COLUMN字段名Type NULL | NOT NULL,字段名Type NULL | NOT NULL. DROP字段名,字段名, .例:alter table 歌手add最后得分 F(6,2)7、UPDATEupdate <表名> set <字段1=表达式1>,<字段2=表达式2.> where <条件>例: update 产品 set 单价单价*1.08 8、BROWSE作用:打开一个“浏览”窗口,供用户浏览或修改记录。格
13、式:BROWSE FIELDS <字段名表>9、USE作用:打开和关闭表文件。格式:USE <文件名>10、LIST和DISPLAY格式:LIST|DISPLAY OFF <范围> FIELDS <表达式表> WHILE <条件> FOR <条件>TO PRINT|TO FILE <文件>LIST|DISPLAY STRUCTURE TO PRINT|TO FILE <文件>)LIST|DISPLAY STATUS TO PRINT|TO FILE <文件>注:LIST命令一次连续显示完
14、所有记录内容。DISPLAY命令在显示记录满屏后,要求用户按任意键继续显示。如果LIST与DISPLAY都无任何选择项时,LIST显示文件的全部记录,DISPLAY仅显示当前记录。11、记录的定位作用:用记录指针(POINTER)定位记录。格式:1)GOTO RECORD n|TOP|BOTTOM命令定位GO RECORD NGO BOTTOMGO TOP2)n3)SKIP +|- n说明:第一个命令又叫绝对定位,其中,RECORD n定位到n号记录,TOP定位到第1个记录,BOTTOM定位到最后一个记录。第二个命令定位到第n个记录,n是一个数值。第三个命令又叫相对定位,它以当前记录为基准前移
15、(-)或后移(+)n个记录,不选任选项,则默认记录指针后移一个记录。LOCATE <范围> FOR <表达式>范围: ALL NEXT N ,RECORD N, REST12、CHANGE和EDIT作用:显示要编辑或修改的字段。格式:CHANGE|EDIT <范围> FIELDS <字段名表> WHILE <条件> FOR <条件>13、REPLACE格式:REPLACE <范围> <字段1> WITH <表达式1>,<字段2> WITH <表达式2> FOR &
16、lt;条件> WHILE<条件>例: REPLACE ALL 工资 WITH 工资+200 FOR 工资<1000REPLACE FROM ARRAY数组名 FIELDS 字段名列表常用子句用内存数组的值更新数据表中的记录:14、DELETE、PACK、ZAP和RECALL作用:分别是给要删除的记录作删除标记、彻底删除、删除所有记录和取消被选中的表记录的删除标志。格式:DELETE <范围> WHILE<条件> FOR <条件> (特例:DELETE FILE FILENAME.DBF,该命令删除指定的表文件)DELETE
17、 TAG ALL OF 复合索引文件名DELETE TAG 索引标识1 OF 复合索引文件名1,索引标识2 OF 复合索引文件名2>例:DELETE FROM 订单 WHERE 签订日期<=2001-01-02PACKZAPRECALL <范围> FOR <条件> WHILE<条件>13、SORT和INDEX1)SORT作用:是建立一个其记录以新的物理顺序排列的新表文件,原文件不变.格式:SORT TO <文件名> ON <字段名1> /A /C /D,<字段名2> /A /
18、C /D>.ASCENDING|DESCENDING <范围> FOR <条件> WHILE<条件> FIELDS<字段表>2)INDEX作用: 对当前表根据关键字表达式的值从小到大排列,并存入TO后指定的索引文件名的文件或复合索引文件的一个标识中。格式: INDEX ON <关键字表达式> TO <文件名>INDEX ON <关键字表达式> TAG <标识名> OF <文件名> FOR <条件>说明:第1个命令中,/A按字段名升序排序,/D按字段名降序排序,/C忽略大
19、小写,针对字符型。关键字而言,ASCENDING和DESCENDING分别表示升序和降序。第1个命令建立.dbf表文件,第2个命令建立.idx单一索引文件,第3个命令建立.cdx复合索引文件(Compound Index)。15、USE <表文件名> INDEX <索引文件名表>、SET INDEX TO和SET ORDER TO作用:分别是打开表文件的同时打开索引文件、打开索引文件和改变主索引。并确定第一个索引文件为主控索引文件.(当前起作用的索引文件称为主控索引文件, 当前起作用的索引标识称为主控索引)格式:USE <表文件名> INDEX <索引
20、文件名表>SET INDEX TO <索引文件名表>作用:打开当前表的一个或多个索引文件并确定第一个索引文件为主控索引文件,该命令用于单索引文件.格式:SET INDEX TO <索引文件表> ADDITIVE说明: (1)<索引文件表>中第一个索引文件为主控索引文件.(2)若缺省ADDITIVE选项,则在用本命令打开索引文件时,除结构复合索引文件以外的索引文件均被关闭SET ORDER TO <数值表达式>|<单索引文件名>|TAG <索引标识> ASCENDING|DESCENDING>(特例:重新索引命令
21、:REINDEX)作用:对于打开表时自动打开的复合索引文件确定主索引,也能确定主索引文件.(1) 数值表达式表示已打开的索引的序号.系统先为单索引文件编号,故结构复合索引文件的序号比单索引文件大.(2) SET ORDER TO 或 SET ORDER TO 0命令取消主索引和主索引文件,表中记录将按物理记录输出.16、FIND、SEEK和LOCATE及CONTINUE作用:前两个命令FIND和SEEK是在一个已经建立了索引文件的表中,定位到关键字中的内容与命令行中字符串相同的第一个记录。后一个命令
22、在用USE打开表文件以后,直接查询表中字段内容。格式:FIND <“字符串”>|<字符串>SEEK <表达式> (表达式的数据类型可为字符型、数字型、日期型和逻辑型。)LOCATE <范围> FOR <条件> WHILE<条件>CONTINUE说明:FIND命令与SEEK命令的区别是前者后跟字符串,而后者后跟表达式。在用LOCATE命令找到一个匹配记录后,可用CONTINUE命令搜索表的剩余部分来寻找其他匹配的记录。18、COUNT作用:统计当前表文件中符合条件的记录数。格式:COUNT <范围> FOR &l
23、t;条件> WHILE<条件> TO <内存变量名>说明:内存变量名可用除参数外的任意字符。19、SUM作用:对当前表中选中记录的全部或指定的数值字段或由指定字段组成的数值表达式累加求和。格式:SUM <范围> 数值<表达式> TO <内存变量名表> FOR <条件> WHILE<条件>20、AVERAGE作用:对当前表中选中记录的全部或部分数值型字段及其组成的表达式求平均值并显示。格式:AVERAGE <范围> 数值<表达式> TO <内存变量名表> FOR <
24、条件> WHILE<条件>21、TOTAL作用:分类汇总命令,按<表达式>做过索引或排序的表文件的数字型字段进行分类汇总。它把与<表达式>值相同的所有记录中的数字字段的值分别进行求和,并各自作为一条记录存放在由文件指定的文件中去。在新生成的记录中,还将包括与<表达式>值相同的所有记录中的首项记录的其他字段内容。格式:TOTAL TO <文件名> ON <表达式>FIELDS <数值型字段名表><范围>FOR <逻辑表达式1>WHILE <逻辑表达式2>例:USE B2-
25、1INDEX ON 职称 TO ZCTATOL ON 职称 TO B2-1T FILEDS 工资22APPEND FROM作用:从其他文件向表文件添加数据。数据来源文件既可以是表文件,也可是文本文件或其他符合规定的文件。从一个文件输入一个OLE对象放入一个通用(general)字段 :APPEND GENERAL 通用字段名 FROM filename如果省略子句FROM filename,则将指定的字段清空。将一个文本文件的内容拷贝到一个备注字段 :APPEND MEMO 备注字段名 FROM filenameOVERWRITE格式:APPEND FROM <文件名>|?FIEL
26、DS <字段名表>FOR <逻辑表达式>FIELDS <字段名表>和FOR <逻辑表达式>,用于源文件为表文件时,指定追加记录的字段和条件。在字段名表和逻辑表达式中的字段名,必须是在来源和目的两个文件中公有的,共注意宽度和类型匹配。实际应用中,数据来源文件常为表文件(.DBF)和ASCII码文本文件(.TXT)对于文本文件又有标准格式(SDF)和通用格式(DELIMITED)之分.例: USE B2-1APPE FROM S3-1.TXT SDFBROWSE23.COPY (选择表的部分内容生成一个新表)作用:把打开的表文件结构及数据复制成由&l
27、t;文件名>所指定的并符合规定要求的文件。如果默认全部选择项和文件名的扩展名,则结构及全部数据都被复制,且其文件扩展名由系统规定为“.DBF”。格式:COPY TO<文件名> FIELDS <字段名表><范围>FOR <逻辑表达式1>WHILE <逻辑表达式2>格式中的或用来为新表建立一个与原表相同的结构索引.例1: COPY TO B3-2COPY TO S3-2.TXT SDF例2: USE RSCOPY TO RS3 FIELDS 姓名,基本工资,奖金USE RS3LIST24. COPY FILE复制数据整表:(可用于复
28、制任何类型文件)COPY FILE 原文件名 TO 目标文件名注:复制表时,还应当复制和它相配的备注文件(.FPT,如有备注字段)和结构复合索引文件。当前表应关闭。(如果已打开表:COPY TO 新文件名)例:将RS.DBF复制为RS1.DBFCOPY FILE RS.DBF TO RS1.DBF或USERSCOPY TO RS1USE RS1LIST25.COPY STRUCTURE (只复制结构不复制数据)作用:表文件结构复制,生成一个指定文件名和包括指定字段的表文件结构;如有CDX或PRODUCTION选择项还将为新表建立一个与源表相同的结构索引.格式: COPY STRUCTURE T
29、O<文件名> FIELDS <字段名表>例: COPY STRUCTURE TO B3-3 FIELDS 编号,姓名,何时工作,职称26.copy to建立结构扩展文件作用:把已打开的表文件的结构作为数据记录复制到由<文件名>指定的库文件中去.格式: COPY TO<文件名> STRUCTURE EXTENDED例: USE B3-3COPY TO B3-4 STRUCTURE EXTENDEDUSE B3-4BROW该命令可以用于测试表文件结构,也可以用于顺序方式建立库文件结构.新库文件的结构是一个由系统规定的标准结构,它由4个字段构成:FIE
30、LD_NAME 字段名FIELD_TYPE 字段类型FIELD_LEN 字段宽度FIELD_DEC 小数位数27.常用命令:库 表打开数据: OPEN DATABASE 库文件名打开表: USE 表文件名使用非前库的表:USE 库名!表名打开索引表:USE 表名 INDEX 索引名显示库信息:DISP DATABASE TO PRINTER显示记录:LIST (快速查看)BROWSE(分屏浏览可修改)DISP (显示当前记录)关闭数据库:CLOSE ALL (关闭所有库、表、索引)关闭表: USEC
31、LOSE DATABASES(关闭当前库、表) CLOSE TABLES(关闭当前表,不关库)CLOSE INDEXES (关闭当前索引)添加表:ADD TABLE 表名 追加记录:APPENDAPPEND FROM 源文件移去表:REMOVE TABLE 表名删除库:DELETE DATABASE 库名 (先关闭库)删除表:DELETE FILE 表名(先关闭表)二、字符中操作函数UPPER(S) 小写字母 UPPER(abc) ABCLOWER(S) 大写字母 LOWER(ACD) acdLEN(S) 求字符串的长度 LEN("中国1号") 7AT(S1,S2) 在字符
32、串S2,找字符串S1 AT("H","CHINA") 2SUBSTR(S,I,N) 在S字符串中的第I个字符起取N个字符 SUBSTR('TECHNOLO',3,3) CHNLEFT(S,N) 从字符串S左边取N个字符 LEFT(“中国人”,4) 中国RIGHT(S,N) 从字符串S右边取N个字符 S=12345RIGHT(S,3) 345SPACE(N) 生成N个空格 "合计"+SPACE(2)+"123" 合计123TRIM(S) 消除字符串尾部空格 TRIM("姓名 ")
33、姓名ALLTRI(S) 消除字符串中所有空格 ALLTRIM("李 丽") 李丽STUFF(S1,N1,N2,S2) 用字符串S2替换S1中第N1个字符起的N2个字符 STUFF("NOW",2,1,"E") NEW& 宏替换 P=“G2”USE &P USE G2二、常用函数1、数学函数函数 用途ABS(<数值表达式>) 绝对值,|x|CEILING(<数值表达式>) >=自变量的最小整数EXP(<数值表达式>) 对基E的幂,e=2.71828FLOOR(<数值表达式&
34、gt;) <=自变量的最大整数INT(<数值表达式>) 取整(舍尾)自变量LOG(<数值表达式>) 自变量的自然对数,ln xLOG10(<数值表达式>) 自变量的普通对数,lg xMAX(<表达式1>,<表达式2>)两个值的最大值MIN(<表达式1>,<表达式2>)两个值的最小值MOD(<数值表达式1>,<数值表达式2>)求余数RAND(<数值表达式1>) 返回伪随机数ROUND(<数值表达式1>,<数值表达式2>)四舍五入第一个自变量SIGN
35、(<数值表达式>) 自变量的符号SQRT(<数值表达式>) 平方根(正根)2、字符串操作函数函数 用途&<内存变量> 用于代替内存变量内容LEN(<字符串表达式>) 返回字符串表达式的字符个数SPACE(<数值表达式>) 生成空格SUBSTR(<字符串表达式>,<数值表达式n>,<数值表达式L>)求子字符串,从指定的字符串表达式第n个开始,总长为L的字符串LOWER(<字符串表达式>) 将字符串字母转换成小写字母UPPER(<字符串表达式>) 将字符串字母转换成大写字
36、母TRIM(<字符串表达式>) 删除字符串尾空格ASC(<字符串表达式>)返回字符串表达式最左边的第一个字符的ASCII码CHR(<数值表达式>) 将数值表达式转换成字符AT(<字符串表达式1>,<字符串表达式2>,<数值表达式n>)确定字符串表达式1在字符串表达式2中的位置,n为字符串表达式第几次出现STR(<数值表达式>,<数值表达式L>,<数值表达式n>)将数值转换为字符串,L为数值表达式总长,n为小数位数VAL(<字符串表达式>) 将数字字符串转换为数字TYPE(&l
37、t;表达式>) 检测表达式值的数据类型LTRIM(<字符串表达式>) 删除字符串左部空格RTRIM(<字符串表达式>) 删除字符串右部空格LEFT(<字符串表达式>,<数值表达式n>)取字符串左边部分字符,n为返回的字符个数RIGHT(<字符串表达式>,<数值表达式n>)取字符串右边部分字符,n从右边截取字符个数MONTH(<日期型表达式>|<日期时间型表达式>)从日期查月份函数CMONTH(<日期型表达式>|<日期时间型表达式>)由日期查月份名函数DAY(<日期
38、型表达式>|<日期时间型表达式>)从日期查当月的日函数DOW(<日期型表达式>|<日期时间型表达式>,<数值表达式>)由日期查星期函数5、显示、打印位置函数函数 用途ROW() 判断光标行位置函数COL() 判断光标列位置函数INKEY(<数值表达式>)检测用户所击键对应的ASCII码函数,数值表达式以秒为单位等待击键的时间6、其他函数函数 用途DISKSPACE() 返回默认磁盘驱动器中可用字节数函数OS() 检测操作系统名称的函数VERSION() 返回VFP版本号的函数打开并修改数据表中的字段:(1) CHANGE FIE
39、LDS 字段名列表(2)EDITFIELDS字段名列表这两个命令的功能相似,可选子句较多(详见手册)。数据表改名:RENAME TABLE tablename1 TO tablename2 其中数据表tablename1必须存在且未打开。RENAME VIEW viewname1 TO viewname2视图改名 其中数据表tablename1必须存在且未打开。将当前表与另一表之间建立关联:SET RELATION TO 表达式1 INTO 工作区号1 | 表别名1;, 表达式2 INTO 工作区号2 | 表别名2 , . 建立关联的两个表必须事先已按关联表达式进行索引排序。在当前表与另一表之
40、间建立一对多关联:SET SKIP TO表别名1, 表别名2消除当前表与另一表之间的关联:SET RELATION OFF INTO 工作区号 | 表别名清除当前记录中字段的数据:五、文件管理(文件和文件夹的复制、创建和删除) 从当前表复制出表或其它类型的文件(表须打开)COPY TO filename FIELDS 字段名列表 常用子句 其它子句 如果没有指定类型,则复制一个与当前的表相同的数据表。复制表的结构:COPY STRUCTURE TO filename FIELDS字段名列表复制任何文件: COPY FILE 源文件 TO 目的文件如果用此命令
41、复制表,表须关闭六、数据的复制与传送 单个记录与数组间的数据传送 当前记录 数组或内存变量:SCATTER FIELDS字段名列表MEMOTO 数组名 BLANK | MEMVAR BLANK其中BLANK表示建立一个空元素的数组。如果用MEMVAR子句,则表示将各字段的值复制到同名同类型的内存变量。如果包含MEMO子句,则备注字段一起复制。数组或内存变量 当前记录 GATHER FROM 数组名 | MEMVAR FILEDS字段名列表 MEMO用同名的内存变量或数组中的第一行置换当前记录,如果数组为多行的二维数组,也只用第一行。成批记录与数组间的数据传送
42、 表 数组:COPY TO ARRAY arrayname 常用子句数组 表:(1) APPEND FROM ARRAY arrayname FOR 条件FIELDS字段名列表用内存数组的值加在数据表的尾部,数据中的一行对应一个新记录,一列对应一个字段。(2) REPLACE FROM ARRAY数组名 常用子句用内存数组的值更新数据表中符合条件的记录。查询结果 数组:SELECT INTO ARRAY arrayname将SQL SELECT语句的查询结果传给数组arrayname。这里“SELECT ”可为各种形式的SELECT查询语句。内存变量赋值:STORE 表达式 TO 变量名或变量
43、名=表达式七、排序与索引 将当前表排序后建立一个新数据表:SORT TO 文件名 ON 字段名1 /A | /D ;/C 字段名2 /A | /D /C .;ASCENDING | DESCENDING 常用子句;建立单索引文件:INDEX ON 表达式 TO 单索引文件名;FOR<条件> UNIQUE COMPACT;ASCENDINGDESCENDINGADDITIVE建立复合索引文件:INDEX ON 表达式 TO TAG 索引名 OF 复合索引文件名;FOR 条件 UNIQUE|CANDIDATE;ASCENDING
44、DESCENDINGADDITIVE使用索引文件:打开表时将索引文件一并打开,USE命令带INDEX子句:USE tablename|? IN 工作区号INDEX 索引文件名列表|?给当前表打开一个或多个索引文件:SET INDEX TO索引文件名列表|?;ORDER 索引文件名序号|索引文件名|TAG索引名 OF 复合索引文件名 ;ASCENDINGDESCENDING指定字符字段在排序或索引时的整理系列:SET COLLATE TO 整理系列对于汉字字符串,“整理系列”可以是“Machine”、“PinYin”或“Stroke”三者之一(必须带引号),分别表示按机器码、拼音和笔划排序。八、
45、查找和定位 顺序查找当前表中满足条件的第一条记录:LOCATE FOR 条件下范围WHILE条件找到后将记录指针定位在满足条件的第一条记录,且函数FOUND()的返回值为真。在索引表中查找:FIND cExpr其中cExpr为字符串表达式。如果找到,则记录指针定位在满足条件的第一条记录,且函数FOUND()的返回值为真;查找失败时,FOUND()的返回值为假,记录指针定位在文件尾。在索引表中查找:SEEK eExpr;ORDER 索引文件名序号|索引文件名|TAG索引名 OF 复合索引文件名 ;ASCENDINGDESCENDING;IN 工作区号|表别名如
46、果找到,则记录指针定位在满足条件的第一条记录,且为真;查找失败时,FOUND()的返回值为假,记录指针定位在文件尾。继续查找:CONTINUE用LOCATE、 FIND或 SEEK查找到一条记录后,用CONTINUE继续查找下一条。用以上查找命令LOCATE、 FIND、SEEK和CONTINUE的查找结果,都可以通过函数FOUND()的返回值反映出来。九、统计计算 统计表中的记录数:COUNT 范围 FOR 条件 WHILE 条件TO内存变量名统计满足条件的记录数,显示记录数或将结果赋给内存变量名。求和:SUM 表达式列表;范围 FOR 条件 WHILE
47、条件TO内存变量名|TO ARRAY 数组名求平均值:AVERAGE 表达式列表;范围 FOR 条件 WHILE 条件TO内存变量名|TO ARRAY 数组名对当前表中数值型字段进行分组求和:TOTAL TO tablename ON 字段名常用子句其中tablename为存放结果的表文件名,字段名为确定求和分组的字段。计算:CALCULATE 表达式列表;范围 FOR 条件 WHILE 条件TO内存变量名|TO ARRAY 数组名其中表达式列表可以是如下函数的任意组合:AVG(nExpr), CNT(), MAX(eExpr), MIN(eExpr), NPV(nExpr1, nExpr2,
48、),STD(nExpr),SUM(nExpr),VAR(nExpr)其中nExpr为数值表达式,eExpr为任意表达式。定义数组:DECLARE | DIMENSION 数组名(下标1,下标2,)定义过程:PROCEDURE 过程名PARAMETERS 参数表RETURN TO MASTER | TO 程序名定义函数:FUNCTION 函数名PARAMETERS 参数表RETURN 表达式定义公共变量:PUBLIC 变量名列表PUBLIC ARRAY 数组名1(行1,列1), 数组名2(行2,列2) ,定义私有变量PRIVATE变量名列表PRIVATE ALLLIKE | EXCEPT 通配符
49、定义局部变量LOCAL 变量名列表LOCAL ARRAY 数组名1(行1,列1), 数组名2(行2,列2) ,显示各种信息:设置是否显示日期中的世纪:SET CENTURY ON | OFF设置显示的小数位数:SET DECIMALS TO 小数位数设置是否处理带删除标记的记录:SET DELETED ON | OFF如果设置为ON,则不处理带删除标记的记录。设置是否显示命令的结果:SET TALK ON | OFF设置文件的搜索路径:SET PATH TO 路径设置传给子程序或自定义函数的参数是按值还是按引用方式传递:SET UDFPARMS TO VALUE | REFERENCE设置为T
50、O VALUE,表示按值传递。执行一个外部命令或程序:RUN 命令或程序在指定的位置显示或打印:行,列 SAY 在指定的位置显示表达式的值,并等待用户输入,将输入值赋给一变量:行,列 SAY 表达式 GET 变量名 DEFAULT 表达式READ例:2,2 say "请输入金额: " get nMoney default 50Read此例先在第2行、第2列显示"请输入金额: ",等待用户输入一个数值,将用户输入值赋给变量nMoney,如果用户不输入数值(直接按回车),则将50赋给nMoney。请注意在下一行不能漏掉“Read”。ALL: 命令对表中所有记
51、录起作用,即执行时从首记录到末记录,最记录指针停在数据库的末尾。 NEXT <expN> 命令作用于从当前记录开始到当前记录后<expN>条记录为止的范围内的记录,最后记录指针指向作用范围内的最后一条记录处。NEXT 1表示仅作用于当前记录。 Record <expN> 命令作用于记录号为<expN>的记录。 TEST 命令作用范围从当前记录开始到表的最后一个记录为止 命令中的FOR子句只作用于满足条件的记录。三、基本命令1. 选择当前工作区SELECT <工作区号|数据表名|0>功能:选择当前工作区。可以直接选择工作区号,也可通过指
52、定其中已经打开的数据表别名来指定工作区。SELECT 0 是选择当前未使用的最低编号的工作区? 在下一行显示表达式串? 在当前行显示表达式串. 将数据按用户设定的格式显示在屏幕上或在打印机上打印ACCEPT 把一个字符串赋给内存变量APPEND 给数据库文件追加记录APPEND FROM 从其它库文件将记录添加到数据库文件中AVERAGE 计算数值表达式的算术平均值BROWSE 全屏幕显示和编辑数据库记录CALL 运行内存中的二进制文件CANCEL 终止程序执行,返回圆点提示符CASE 在多重选择语句中,指定一个条件CHANGE 对数据库中的指定字段和记录进行编辑CLEAR 清洁屏幕,将光标移
53、动到屏幕左上角CLEAR ALL 关闭所有打开的文件,释放所有内存变量,选择1号工作区CLEAR FIELDS 清除用SET FIELDS TO命令建立的字段名表CLEAR GETS 从全屏幕READ中释放任何当前GET语句的变量CLEAR MEMORY 清除当前所有内存变量CLEAR PROGRAM 清除程序缓冲区CLEAR TYPEAHEAD 清除键盘缓冲区CLOSE 关闭指定类型文件CONTINUE 把记录指针指到下一个满足LOCATE命令给定条件的记录,在LOCATE命令后出现。无LOCATE则出错COPY TO 将使用的数据库文件复制另一个库文件或文本文件COPY FILE 复制任何
54、类型的文件COPY STRUCTURE EXTENED TO 当前库文件的结构作为记录,建立一个新的库文件COPY STRUCTURE TO 将正在使用的库文件的结构复制到目的库文件中COUNT 计算给定范围内指定记录的个数CREATE 定义一个新数据库文件结构并将其登记到目录中CREATE FROM 根据库结构文件建立一个新的库文件CREATE LABEL 建立并编辑一个标签格式文件CREATE REPORT 建立宾编辑一个报表格式文件DELETE 给指定的记录加上删除标记DELETE FILE 删除一个未打开的文件DIMENSION 定义内存变量数组DIR 或 DIRECTORY 列出指定
55、磁盘上的文件目录DISPLAY 显示一个打开的库文件的记录和字段DISPLAY FILES 查阅磁盘上的文件DISPLAY HISTORY 查阅执行过的命令DISPLAY MEMORY 分页显示当前的内存变量DISPLAY STATUS 显示系统状态和系统参数DISPLAY STRUCTURE 显示当前书库文件的结构DO 执行FoxBase程序DO CASE 程序中多重判断开始的标志DO WHILE 程序中一个循环开始的标志EDIT 编辑数据库字段的内容EJECT 使打印机换页的命令,将PROW()函数和PCOL()函数值置为0ELSE 在IF.ENDIF结构中提供另一个条件选择路线ENDCA
56、SE 终止多重判断ENDDO 程序中一个循环体结束的标志ENDIF 判断体IF.ENDIF结构结束标志ERASE 从目录中删除指定文件EXIT 在循环体内执行退出循环的命令FIND 将记录指针移动到第一个含有与给定字符串一致的索引关键字的记录上FLUSH 清除所有的磁盘存取缓冲区GATHER FROM 将数组元素的值赋予数据库的当前记录中GO/GOTO 将记录指针移动到指定的记录号HELP 激活帮助菜单,解释FoxBASE+的命令IF 在IF.ENDIF结构中指定判断条件INDEX 根据指定的关键词生成索引文件INPUT 接受键盘键入的一个表达式并赋予指定的内存变量JOIN 从两个数据库文件中
57、把指定的记录和字段组合成另一个库文件KEYBOARD 将字符串填入键盘缓冲区LABEL FROM 用指定的标签格式文件打印标签LIST 列出数据库文件的记录和字段LIST FILES 列出磁盘当前目录下的文件LIST HISTORY 列出执行过的命令LIST MEMORY 列出当前内存变量及其值LIST STATUS 列出当前系统状态和系统参数LIST STRUCTURE 列出当前使用的数据库的库结构LOAD 将汇编语言程序从磁盘上调入内存LOCATE 将记录指针移动到对给定条件为真的记录上LOOP 跳过循环体内LOOP与ENDDO之间的所有语句,返回到循环体首行MENU TO 激活一组.PR
58、OMPT命令定义的菜单MODIFY COMMAND 进入FoxBASE+系统的字处理状态,并编辑一个ASCII码文本文件(如果指定文件名以.PRG为后缀,则编辑一个FoxBASE+命令文件)MODIFY FILE 编辑一个一般的ASCII码文本文件MODIFY LABEL 建立并编辑一个标签(.LBL)文件MODIFY REPORT 建立并编辑一个报表格式文件(.FRM)文件MODIFY STRUCTURE 修改当前使用的库文件结构NOTE/* 在命令文件(程序)中插入以行注释(本行不被执行)ON 根据指定条件转移程序执行OTHERWISE 在多重判断(DO CASE)中指定除给定条件外的其它
59、情况PACK 彻底删除加有删除标记的记录PARAMETERS 指定子过程接受主过程传递来的参数所存放的内存变量PRIVATE 定义内存变量的属性为局部性质PROCEDURE 一个子过程开始的标志PUBLIC 定义内存变量为全局性质QUIT 关闭所有文件并退出FoxBASE+READ 激活GET语句,并正是接受在GET语句中输入的数据RECALL 恢复用DELETE加上删除标记的记录REINDEX 重新建立正在使用的原有索引文件RELEASE 清楚当前内存变量和汇编语言子程序RENAME 修改文件名REPLACE 用指定的数据替换数据库字段中原有的内容REPORT FORM 显示数据报表RESTORE FROM 从内存变量文件(.MEM)中恢复内存变量RESTORE SCREEN 装载原来存储过的屏幕映象RESUME 使暂停的程序从暂停的断点继续执行RETRY 从当前执行的子程序返回调用程序,并从原调用行重新执行RETURN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 社会学概论第四章社会互动与社会角色
- 糖尿病的健康教育
- 网络调查方法与数据分析指南
- 网络设备安全检测服务协议
- 网络营销效果评估实战指南
- 专题07(可能性的应用)-2024-2025学年四年级数学上学期期末备考真题分类汇编(江苏专版)(学生版+解析)
- 网络安全防护技术研发与应用合同
- 物联网智能环保监测系统开发合同
- 汽车配件行业供应链优化策略
- 智能家居安全风险评估及防范措施研究报告
- JIT、QR与供应链管理课件
- 车辆采购服务投标方案(完整技术标)
- 《大学生军事理论教程》第四章
- 光伏发电项目达标投产实施细则之欧阳科创编
- 第届世界旅游小姐大赛中国云南总决赛招商赞助方案
- 爱立信网管BO操作流程
- 大学生计算与信息化素养-北京林业大学中国大学mooc课后章节答案期末考试题库2023年
- 第四代篦冷机液压系统的故障与维护获奖科研报告
- 人大代表为人民
- 文明之痕:流行病与公共卫生知到章节答案智慧树2023年四川大学
- 钢结构设计原理全套PPT完整教学课件
评论
0/150
提交评论