FoxPro共有225個(gè)工作區(qū),工作區(qū)號(hào)為1-255.其中前10個(gè)工作區(qū)也可命名為A-J.。最近一交換選擇的工作區(qū)稱為當(dāng)前工作區(qū)。調(diào)用其它工作區(qū)的字段時(shí)應(yīng)按工作區(qū)/別名- 字段名“或”別名。字段名格式。
一個(gè)數(shù)組占1個(gè)內(nèi)存變量名額,通過數(shù)組定義命令DIMENSION建立,賦值前數(shù)組各元素的初值為邏輯假值
進(jìn)入FoxPro系統(tǒng)時(shí),系統(tǒng)初始選中1號(hào)工作區(qū)。在FoxPro命令行中同時(shí)使用的各個(gè)子句,其位置可以交換。
在FoxPro中用戶可以使用兩種方式執(zhí)行命令,即立即執(zhí)行方式和程序方式。
立即方式是一種交互方式。好處是簡單方便,缺點(diǎn)是工作量大,易出錯(cuò),降低了計(jì)算機(jī)的使用效率。
程序方式又稱命令文件方式,這種方式要求用戶事先根據(jù)任務(wù)編寫程序。好處是速度快,計(jì)算機(jī)使用效率高。是Foxpro的主要使用方式。缺點(diǎn)是要求用戶學(xué)習(xí)和掌握程序設(shè)計(jì)方法。
表示其后內(nèi)容是注釋,系統(tǒng)不執(zhí)行。
下列命令的語法規(guī)則中,非法的是D
(A)命令動(dòng)詞可只寫前四個(gè)字母 (B)命令動(dòng)詞后的子句位置可交換
(C)命令動(dòng)詞大小寫字母等價(jià) (D)各短語和參數(shù)要連續(xù)輸入無空格
對(duì)內(nèi)存變量的敘述,不正確的是D .
(A) 內(nèi)存變量是獨(dú)立于數(shù)據(jù)庫的變量 (B) 內(nèi)存變量有N、C、L、D、S類型
(C) 內(nèi)存變量用賦值語句定義 (D) 內(nèi)存變量的形式只有標(biāo)量
綜合:1、變量賦值、表達(dá)式運(yùn)算。
2、內(nèi)存變量賦值、釋放、顯示、輸出、內(nèi)存變量文件*作。
3、函數(shù)
4、數(shù)組定義、賦值、與數(shù)據(jù)庫文件交換數(shù)據(jù)
函數(shù)P75起 數(shù)值函數(shù)
1、絕對(duì)值 ABS( 數(shù)值表達(dá)式 ) 2、取整 INT( 數(shù)值表達(dá)式 ) 3、最大值MAX(N1,N2,…)4、最小值 MIN( N1,N2,…) 5、平方根SQRT( 數(shù)值表達(dá)式 ) 6、EXP( 數(shù)值表達(dá)式 )=eX 7、LOG( 數(shù)值表達(dá)式 )=LnX
8、正弦 SIN( 數(shù)值表達(dá)式 ) 9、余弦 COS( 數(shù)值表達(dá)式 ) 10、正切 TAN( 數(shù)值表達(dá)式 ) (*弧度表示)
11、0-1之間隨機(jī)數(shù) RAND([ 數(shù)值表達(dá)式 ])(數(shù)值表達(dá)式為負(fù),從當(dāng)前時(shí)鐘取種子數(shù))
12、四舍五入ROUND( 數(shù)值表達(dá)式1 , 保留位數(shù) )*保留位數(shù)為負(fù)表示其絕對(duì)值為整數(shù)部分四舍五入的位數(shù)
字符串函數(shù)
1、字符串長度LEN( 字符表達(dá)式 )2、刪尾部空格TRIM( 字符表達(dá)式 )3、刪頭部空格LTRIM( 字符表達(dá)式 )
4、取子串SUBSTR( 字符表達(dá)式 , 從第幾個(gè)開始 ,[ 取幾個(gè)字符 ]) 5、首字母大寫PROPER( 字符表達(dá)式 )
6、子字符串查找AT( 字符表達(dá)式1 , 字符表達(dá)式2 )返回式1在式2的開始位置,沒找到返回0,區(qū)分大小寫
7、子串替換STUFF( 字符表達(dá)式1 , 數(shù)值表達(dá)式1 , 數(shù)值表達(dá)式2 , 字符表達(dá)式2 )
8、大小變小寫LOWER( 字符表達(dá)式 )9、小寫變大寫UPPER( 字符表達(dá)式 )10、空格SPACE( 空格數(shù)量 )
11、字符串復(fù)制REPLICATE( 字符串 , 復(fù)制次數(shù) )12、宏替換 內(nèi)存變量 [, 字符串 ]
日期和時(shí)間函數(shù)
1、取系統(tǒng)日期DATE() 2、取系統(tǒng)時(shí)間TIME()3、取年份YEAR( 日期表達(dá)式 )4、取日DAY( 日期表達(dá)式 )
5、取月份MONTH( 日期表達(dá)式 )6、日期格式轉(zhuǎn)換MDY( 日期表達(dá)式 )(月日年格式)
數(shù)據(jù)類型轉(zhuǎn)換函數(shù)
1、字符轉(zhuǎn)數(shù)值VAL( 字符表達(dá)式 )2、字符轉(zhuǎn)日期CTOD( 字符表達(dá)式 )
3、日期轉(zhuǎn)字符DTOC ( 日期表達(dá)式 [,1])帶可選項(xiàng)“1”返回一個(gè)適于進(jìn)行索引的日期字符串
4、數(shù)值轉(zhuǎn)字符STR( 數(shù)值表達(dá)式1 [, 返回字符串長度 [, 小數(shù)部分輸出位數(shù) ]])
測試函數(shù)
1、數(shù)據(jù)類型測試TYPE( 字符表達(dá)式 )2、測試文件尾EOF([ 工作區(qū)號(hào) | 文件別名 ])
2、測試文件頭BOF([ 工作區(qū)號(hào) | 文件別名 ])4、測試當(dāng)前記錄號(hào)RECNO([ 工作區(qū)號(hào) | 文件別名 ])
5、測試庫文件記錄數(shù)RECCOUNT([ 工作區(qū)號(hào) | 文件別名 ])6、測試屏幕行列坐標(biāo)ROW()、COL()
7、測試是否查找成功FOUND([ 工作區(qū)號(hào) | 文件別名 ])8、測試打印頭坐標(biāo)PROW()、PCOL()
命令
內(nèi)存變量賦值:1、store 表達(dá)式 to 內(nèi)存變量表 2、 內(nèi)存變量 = 表達(dá)式
3、save screen to 屏幕型內(nèi)存變量 restore screen from 屏幕型內(nèi)存變量
內(nèi)存變量釋放:1、release 內(nèi)存變量表 2、release all [like|except 通配符 ] 3、clear memory 4、clear all
內(nèi)存變量文件建立:save to 內(nèi)存變量文件名 [all [like|except 通配符 ]]
內(nèi)存變量恢復(fù):restore from 內(nèi)存變量文件名 [additive]無additive消除當(dāng)前內(nèi)存中變量,有additive保留變量
內(nèi)存變量顯示:1、list memory [to print] 2、display memory [to print]
內(nèi)存變量輸出: ?|??[ 表達(dá)式表 ] ?從當(dāng)前光標(biāo)所在行的下一行第0列開始顯示,??從當(dāng)前光標(biāo)所在處開始顯示
數(shù)組定義:dimension|declare 數(shù)組名1 ( 數(shù)值表達(dá)式1 [, 數(shù)值表達(dá)式2 ])[, 數(shù)組名2 ( 數(shù)值表達(dá)式3 [ 數(shù)值表達(dá)式4 ])]… 數(shù)組元素賦值:1、store 表達(dá)式 to 數(shù)組 2、 數(shù)組 = 表達(dá)式
數(shù)據(jù)庫文件記錄值傳送到數(shù)組scatter[fields 字段表 ] to 數(shù)組 [blank] memvar [blank]
數(shù)組中的數(shù)據(jù)傳送到數(shù)據(jù)庫文件gather from 數(shù)組 | memvar [fields 字段表 ]
建數(shù)據(jù)庫文件結(jié)構(gòu)create[ 文件名 |?] 追加記錄append[blank] 數(shù)據(jù)庫文件打開use[ 庫文件名 |?][alias 別名 ]
記錄顯示list | display[ 范圍 ][fields 字段名表 ][for 條件 ][while 條件 ][off][to printer|file 文件名 ]
范圍:record n第n條記錄*作,next n下n條記錄*作,all所有記錄*作,rest當(dāng)前到文件結(jié)束所有記錄*作
off 不顯示記錄 關(guān)閉當(dāng)前工作區(qū)數(shù)據(jù)庫use 關(guān)閉當(dāng)前打開的所有數(shù)據(jù)庫 close databases關(guān)閉所有close all
關(guān)閉索引文件 close indexes 關(guān)閉格式文件 close format 關(guān)閉過程文件 close procedure
關(guān)閉后備文本文件 close alternate 顯示數(shù)據(jù)庫結(jié)構(gòu)list|display structure[to printer|to file 文件名 ]
修改庫結(jié)構(gòu) modify structure (生成。bak和。tbk文件,修改字段類型該字段數(shù)據(jù)丟失,不能同時(shí)修改字段名和寬度)
絕對(duì)移動(dòng)go|goto[[record] 記錄號(hào) |top|bottom][in 工作區(qū)號(hào) | 文件別名 ](第一個(gè)記錄:鍵值最小的記錄)
相對(duì)移動(dòng)skip[ 移動(dòng)記錄數(shù) ][in 工作區(qū)號(hào) | 文件別名 ]插入記錄insert[before][blank]before:前,blank空
邏輯刪除delete[ 范圍 ][for 條件 ][while 條件 ] 恢復(fù)邏輯刪除recall[ 范圍 ][for 條件 ][while 條件 ]
物理刪除pack 物理刪除所有記錄zap 編輯修改edit|change[ 范圍 ][fields 字段名表 ][for 條件 ][while 條件 ]
瀏覽編輯browse[ 范圍 ][fields 字段名表 ][for 條件 ][while 條件 ][freeze 字段名 ][noappend][nodelete]
[noedit][font 字體 [, 字號(hào) ] freeze 字段名 指定可修改的字段
替換修改replace[ 范圍 ] 字段1 with 表達(dá)式1 [, 字段2 with 表達(dá)式2 …] [for 條件 ][while 條件 ]
排序 /a升序/d降序/c不區(qū)分大小寫,關(guān)鍵字只能C、N、D型??砂嚓P(guān)聯(lián)工作區(qū)文件字段:別名- 字段名
sort to 文件名 on 字段1 [/a][/c][/d][, 字段2 [/a][/c][/d]…][ 范圍 ][fields 字段表 ][for 條件 ][while 條件 ]
index on 關(guān)鍵字表達(dá)式 to 索引文件名 [for 條件 ][compact][unique][additive]多字段索引必須是C型。
compact壓縮 unique惟一性索引(若有多條記錄具有相同關(guān)鍵字表達(dá)式,索引文件只包含第一條記錄。Additive不關(guān)閉先前打開的索引,新建索引文件成為主索引。關(guān)閉索引文件1、set index to 2、close index
打開索引文件1、use 庫文件名 index 索引文件名表 2、set index to 索引文件名表
指定主索引set order to[ 索引文件名表中的順序號(hào) | 索引文件名 ] 重建索引reindex[compact]
順序查詢locate[ 范圍 ][for 條件 ][while 條件 ]繼續(xù)查詢continue(locate中用while語句,continue無意義)
索引查詢find 字符串 | 數(shù)值常量 只能查字符串或數(shù)字字符串有前導(dǎo)空格須用引號(hào),否則可不必使用定界符
seek 表達(dá)式