VFP命令、函數(shù)及程序語句大全
一、主要命令:
1、CREATE
作用:建立一個新的表。
格式:CREATE [<文件>|?](注意,命令字符可取前面四個字符,后面可省略不寫,即CREA,下
同;中括號表示其中的參數(shù)是可選的;|管道符號表示兩個參數(shù)只能選擇一個,不能同時選擇,下
同。)
說明:文件指建立以.dbf為擴(kuò)展名的VFP數(shù)據(jù)庫文件,在命令后面加上一個問號表示系統(tǒng)會彈出
對話框,要求用戶輸入想要建立的表名。在命令中不加文件名或問號系統(tǒng)也會彈出對話框,要求用
戶輸入想要建立的表名。
2、MODIFY STRUCTURE
作用:顯示表文件結(jié)構(gòu),并允許修改此表的結(jié)構(gòu)。
格式:MODIFY STRUCTURE
說明:只有在用USE命令打開表文件以后,才能顯示或修改表文件的結(jié)構(gòu)。
3、APPEND
作用:在當(dāng)前表的尾部(無論表中有無記錄)追加記錄(在當(dāng)前表指當(dāng)前正使用的表)。
格式:APPEND
說明:在APPEND命令后面加上BLANK參數(shù)表示在當(dāng)前表的尾部添加一條空白記錄。無BLANK參數(shù)
時,表示在當(dāng)前表的尾部添加一條記錄并要求用戶輸入相應(yīng)的字段內(nèi)容。
4、INSERT
作用:在表文件中間插入一個新記錄。
格式:INSERT [BEFORE]
說明:INSERT 在當(dāng)前記錄后插入一記錄;
INSERT BEFORE 在當(dāng)前記錄前插入一記錄;
INSERT BEFORE BLANK 在當(dāng)前記錄前插入一空記錄。
5、BROWSE
作用:主要用于打開瀏覽窗口,查閱表文件并同時進(jìn)行修改。
格式:BROWSE
6、USE
作用:打開和關(guān)閉表文件。
格式:USE [<文件名
USE
說明:前一個命令用來打開<文件名>指定的表文件,該表如有備注型字段,則同時打開相應(yīng)的
備注文件(.fpt文件);后一個命令關(guān)閉當(dāng)前打開的表文件。
7、LIST和DISPLAY
作用:顯示表(.dbf)的內(nèi)容、結(jié)構(gòu)或狀態(tài)。
格式:LIST|DISPLAY [OFF] [<范圍>] [FIELDS] <表達(dá)式表> [WHILE <條件>] [FOR <條件
[TO PRINT|TO FILE <文件
LIST|DISPLAY STRUCTURE TO PRINT|TO FILE <文件
LIST|DISPLAY STATUS [TO PRINT|TO FILE <文件
說明:命令帶OFF參數(shù)表示不顯示記錄號,范圍指定對哪些記錄進(jìn)行操作,范圍包括:RECORD n
第幾號記錄、NEXT n 當(dāng)前記錄開始的幾個記錄、REST 自當(dāng)前記錄開始至文件末尾的所有記錄、ALL
所有的記錄。不選范圍則隱含范圍為ALL;FIELDS后跟字段名,字段名與字段名之間用逗號分
隔。WHILE后跟條件,F(xiàn)OR后面也跟條件,區(qū)別是,WHILE后的條件如果滿足,便停止查找;FOR后的
條件查找所有滿足條件的記錄。TO PRINT和TO FILE <文件>分別表示將顯示結(jié)果在打印機(jī)上打印出
來和將顯示結(jié)果輸出到文件。DISPLAY命令在顯示記錄滿屏后,要求用戶按任意鍵繼續(xù)顯示,并且在
該命令中,如果省略范圍僅顯示當(dāng)前記錄。格式中,下面兩個命令分別為顯示表結(jié)構(gòu)(STRUCTURE)
和工作狀態(tài)(STATUS)。
8、記錄的定位
作用:用記錄指針(POINTER)定位記錄。
格式:GO[TO] RECORD n|TOP|BOTTOM
n
SKIP [+|-]
說明:第一個命令又叫絕對定位,其中,RECORD n定位到n號記錄,TOP定位到第1個記錄,
BOTTOM定位到最后一個記錄。第二個命令定位到第n個記錄,n是一個數(shù)值。第三個命令又叫相對定
位,它以當(dāng)前記錄為基準(zhǔn)前移(-)或后移(+)n個記錄,不選任選項(xiàng),則默認(rèn)記錄指針后移一個記
錄。
9、CHANGE和EDIT
作用:顯示要編輯或修改的字段。
格式:CHANGE|EDIT [<范圍>] [FIELDS <字段名表>] [WHILE <條件>] [FOR <條件
10、BROWSE
作用:打開一個“瀏覽”窗口,供用戶瀏覽或修改記錄。
格式:BROWSE [FIELDS <字段名表
11、REPLACE
作用:用表達(dá)式的值代替命令中與之相對應(yīng)的字段的內(nèi)容。
格式:REPLACE [<范圍>] <字段1> WITH <表達(dá)式1>[,<字段2> WITH <表達(dá)式2>] [FOR <條件>
] [WHILE<條件
12、DELETE、PACK、ZAP和RECALL
作用:分別是給要刪除的記錄作刪除標(biāo)記、徹底刪除、刪除所有記錄和取消被選中的表記錄的
刪除標(biāo)志。
格式:DELETE [<范圍>] [WHILE<條件>] [FOR <條件>] (特例:DELETE FILE FILENAME.DBF,
該命令刪除指定的表文件)
PACK
ZAP
RECALL [<范圍>] [FOR <條件>] [WHILE<條件
13、SORT和INDEX
作用:分別是建立一個其記錄以新的物理順序排列的新表文件和對當(dāng)前表根據(jù)關(guān)鍵字表達(dá)式的值
從小到大排列,并存入TO后指定的索引文件名的文件或復(fù)合索引文件的一個標(biāo)識中。
格式:SORT TO <文件名> ON <字段名1> [/A] [/C] [/D][,<字段名2> [/A] [/C] [/D]]...
[ASCENDING|DESCENDING] [<范圍>] [FOR <條件>] [WHILE<條件>] [FIELDS<字段表
INDEX ON <關(guān)鍵字表達(dá)式> TO <文件名>
INDEX ON <關(guān)鍵字表達(dá)式> TAG <標(biāo)識名> [OF <文件名>] [FOR <條件
說明:第1個命令中,/A按字段名升序排序,/D按字段名降序排序,/C忽略大小寫,針對字符型
關(guān)鍵字而言,ASCENDING和DESCENDING分別表示升序和降序。第1個命令建立.dbf表文件,第2個命令
建立.idx單一索引文件,第3個命令建立.cdx復(fù)合索引文件(Compound Index)。
14、USE <表文件名> INDEX <索引文件名表>、SET INDEX TO和SET ORDER TO
作用:分別是打開表文件的同時打開索引文件、打開索引文件和改變主索引。
格式:USE <表文件名> INDEX <索引文件名表>
SET INDEX TO [<索引文件名表
SET ORDER TO [<索引文件名>](特例:重新索引命令:REINDEX)
15、FIND、SEEK和LOCATE及CONTINUE
作用:前兩個命令FIND和SEEK是在一個已經(jīng)建立了索引文件的表中,定位到關(guān)鍵字中的內(nèi)容與命
令行中字符串相同的第一個記錄。后一個命令在用USE打開表文件以后,直接查詢表中字段內(nèi)容。
格式:FIND <“字符串”>|<字符串>
SEEK <表達(dá)式>
LOCATE [<范圍>] [FOR <條件>] [WHILE<條件
CONTINUE
說明:FIND命令與SEEK命令的區(qū)別是前者后跟字符串,而后者后跟表達(dá)式。在用LOCATE命令找到
一個匹配記錄后,可用CONTINUE命令搜索表的剩余部分來尋找其他匹配的記錄。
16、COUNT
作用:統(tǒng)計當(dāng)前表文件中符合條件的記錄數(shù)。
格式:COUNT [<范圍>] [FOR <條件>] [WHILE<條件>] [TO <內(nèi)存變量名
說明:內(nèi)存變量名可用除參數(shù)外的任意字符。
17、SUM
作用:對當(dāng)前表中選中記錄的全部或指定的數(shù)值字段或由指定字段組成的數(shù)值表達(dá)式累加求和。
格式:SUM [<范圍>] [數(shù)值<表達(dá)式>] [TO <內(nèi)存變量名表>] [FOR <條件>] [WHILE<條件
18、AVERAGE
作用:對當(dāng)前表中選中記錄的全部或部分?jǐn)?shù)值型字段及其組成的表達(dá)式求平均值并顯示。
格式:AVERAGE [<范圍>] [數(shù)值<表達(dá)式>] [TO <內(nèi)存變量名表>] [FOR <條件>] [WHILE<條件
未完
VFP命令、函數(shù)及程序語句大全(2)
2003年7月24日
二、常用函數(shù)
1、數(shù)學(xué)函數(shù)
函數(shù) 用途
ABS(<數(shù)值表達(dá)式>) 絕對值,|x|
CEILING(<數(shù)值表達(dá)式>) >=自變量的最小整數(shù)
EXP(<數(shù)值表達(dá)式>) 對基E的冪,e=2.71828
FLOOR(<數(shù)值表達(dá)式>) <=自變量的最大整數(shù)
INT(<數(shù)值表達(dá)式>) 取整(舍尾)自變量
LOG(<數(shù)值表達(dá)式>) 自變量的自然對數(shù),ln x
LOG10(<數(shù)值表達(dá)式>) 自變量的普通對數(shù),lg x
MAX(<表達(dá)式1>,<表達(dá)式2>) 兩個值的最大值
MIN(<表達(dá)式1>,<表達(dá)式2>) 兩個值的最小值
MOD(<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>) 求余數(shù)
RAND([<數(shù)值表達(dá)式1>]) 返回偽隨機(jī)數(shù)
ROUND(<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>) 四舍五入第一個自變量
SIGN(<數(shù)值表達(dá)式>) 自變量的符號
SQRT(<數(shù)值表達(dá)式>) 平方根(正根)
2、字符串操作函數(shù)
函數(shù) 用途
&<內(nèi)存變量> 用于代替內(nèi)存變量內(nèi)容
LEN(<字符串表達(dá)式>) 返回字符串表達(dá)式的字符個數(shù)
SPACE(<數(shù)值表達(dá)式>) 生成空格
SUBSTR(<字符串表達(dá)式>,<數(shù)值表達(dá)式n>[,<數(shù)值表達(dá)式L>]) 求子字符串,從指定的字符串表達(dá)式第n個開始,總長為L的字符串
LOWER(<字符串表達(dá)式>) 將字符串字母轉(zhuǎn)換成小寫字母
UPPER(<字符串表達(dá)式>) 將字符串字母轉(zhuǎn)換成大寫字母
TRIM(<字符串表達(dá)式>) 刪除字符串尾空格
ASC(<字符串表達(dá)式>) 返回字符串表達(dá)式最左邊的第一個字符的ASCII碼
CHR(<數(shù)值表達(dá)式>) 將數(shù)值表達(dá)式轉(zhuǎn)換成字符
AT(<字符串表達(dá)式1>,<字符串表達(dá)式2>[,<數(shù)值表達(dá)式n>]) 確定字符串表達(dá)式1在字符串表達(dá)式2中的位置,n為字符串表達(dá)式第幾次出現(xiàn)
STR(<數(shù)值表達(dá)式>[,<數(shù)值表達(dá)式L>][,<數(shù)值表達(dá)式n>) 將數(shù)值轉(zhuǎn)換為字符串,L為數(shù)值表達(dá)式總長,n為小數(shù)位數(shù)
VAL(<字符串表達(dá)式>) 將數(shù)字字符串轉(zhuǎn)換為數(shù)字
TYPE(<表達(dá)式>) 檢測表達(dá)式值的數(shù)據(jù)類型
LTRIM(<字符串表達(dá)式>) 刪除字符串左部空格
RTRIM(<字符串表達(dá)式>) 刪除字符串右部空格
LEFT(<字符串表達(dá)式>,<數(shù)值表達(dá)式n>) 取字符串左邊部分字符,n為返回的字符個數(shù)
RIGHT(<字符串表達(dá)式>,<數(shù)值表達(dá)式n>) 取字符串右邊部分字符,n從右邊截取字符個數(shù)
3、表(.dbf)操作函數(shù)
函數(shù) 用途
BOF([<工作區(qū)號或別名>]) 查表文件開始函數(shù)
EOF([<工作區(qū)號或別名>]) 表文件結(jié)尾測試函數(shù)
RECNO([<工作區(qū)號或別名>])測試當(dāng)前或指定工作區(qū)表的當(dāng)前記錄號
DELETED([<工作區(qū)號或別名>])記錄刪除測試函數(shù)
FILE(<"字符串">)測試文件是否存在函數(shù)
DBF([<工作區(qū)號或別名>]) 檢測表的文件名函數(shù)
4、日期、時間函數(shù)
函數(shù) 用途
DATE() 查系統(tǒng)當(dāng)前日期函數(shù)
TIME([<數(shù)值表達(dá)式>]) 查系統(tǒng)當(dāng)前時間函數(shù)
YEAR(<日期型表達(dá)式>|<日期時間型表達(dá)式>) 由日期查年函數(shù)
MONTH(<日期型表達(dá)式>|<日期時間型表達(dá)式>) 從日期查月份函數(shù)
CMONTH(<日期型表達(dá)式>|<日期時間型表達(dá)式>) 由日期查月份名函數(shù)
DAY(<日期型表達(dá)式>|<日期時間型表達(dá)式>) 從日期查當(dāng)月的日函數(shù)
DOW(<日期型表達(dá)式>|<日期時間型表達(dá)式>[,<數(shù)值表達(dá)式>])由日期查星期函數(shù)
CDOW(<日期型表達(dá)式>|<日期時間型表達(dá)式>) 從日期查星期名函數(shù)
DTOC(<日期型表達(dá)式>|<日期時間型表達(dá)式>) 日期轉(zhuǎn)換為字符函數(shù)
CTOD(<字符串表達(dá)式>) 字符串轉(zhuǎn)換為日期函數(shù)
CTOT(<字符串表達(dá)式>) 返回日期時間值函數(shù)
TTOC(<日期時間型表達(dá)式>) 返回字符值
5、顯示、打印位置函數(shù)
函數(shù) 用途
ROW() 判斷光標(biāo)行位置函數(shù)
COL() 判斷光標(biāo)列位置函數(shù)
INKEY([<數(shù)值表達(dá)式>]) 檢測用戶所擊鍵對應(yīng)的ASCII碼函數(shù),數(shù)值表達(dá)式以秒為單位等待擊鍵的時間
6、其他函數(shù)
函數(shù) 用途
DISKSPACE() 返回默認(rèn)磁盤驅(qū)動器中可用字節(jié)數(shù)函數(shù)
OS() 檢測操作系統(tǒng)名稱的函數(shù)
VERSION() 返回VFP版本號的函數(shù)
VFP命令、函數(shù)及程序語句大全(3)
三、主要程序語句
1、條件判斷語句
格式:(1)IF <條件>
<命令語句組>
ENDIF
說明:如果條件為真,則執(zhí)行命令語句組中的各語句,否則跳過這些命令語句不執(zhí)行,
而執(zhí)行ENDIF后的語句。
(2)IF <條件>
<命令語句組1>
ELSE
<命令語句組