电竞比分网-中国电竞赛事及体育赛事平台

分享

vfp 測試函數(shù)

 悟靜 2009-06-21
在數(shù)據(jù)庫操作過程中,用戶需要了解數(shù)據(jù)對(duì)象的類型、狀態(tài)等屬性,Visual FoxPro提供了相關(guān)的測試函數(shù),使用戶能夠準(zhǔn)確地獲取操作對(duì)象的相關(guān)屬性。 
    1.?dāng)?shù)據(jù)類型測試函數(shù) 
    格式:VARTYPE((表達(dá)式),[(邏輯表達(dá)式)]) 
    功能:測試表達(dá)式的數(shù)據(jù)類型,返回用字母代表的數(shù)據(jù)類型。函數(shù)值為字符型。未定義或錯(cuò)誤的表達(dá)式返回字母U。若表達(dá)式是一個(gè)數(shù)組,則根據(jù)第一個(gè)數(shù)組元素的類型返回字符串。 
若表達(dá)式的運(yùn)算結(jié)果是NULL值,則根據(jù)函數(shù)中邏輯表達(dá)式的值決定是否返回表達(dá)式的類型。具體規(guī)則是:如果邏輯表達(dá)式為.T.,則返回表達(dá)式的原數(shù)據(jù)類型。如果邏輯表達(dá)式為.F.或省略,則返回X,表明表達(dá)式的運(yùn)算結(jié)果是NUll值。 
    舉例: 
    a=DATE() 
    a=NUll 
    ?VARTYPE($385),VARTYPE([FoxPro]),VARTYPE(a,T.),VARTYPE(a) 
    輸出為:Y C D X。 
    2.表頭測試函數(shù) 
    格式:BOF([(工作區(qū)號(hào))])l<別名)]) 
    功能:測試指定或當(dāng)前工作區(qū)的記錄指針是否超過了第一個(gè)邏輯記錄,即是否指向表頭,若是,函數(shù)值為.T.,否則為.F.。(工作區(qū)號(hào))用于指定工作區(qū),(別名)為工作區(qū)的別名或在該工作區(qū)上打開的表的別名。當(dāng)<工作區(qū)號(hào)>和<別名>都缺省不寫時(shí),默認(rèn)為當(dāng)前工作區(qū)。 
    3.表尾測試函數(shù) 
    格式:EOF([(工作區(qū)號(hào))[(別名>]) 
    功能:測試指定或當(dāng)前工作區(qū)中記錄指針是否超過了最后一個(gè)邏輯記錄,即是否指向表的末尾,若是,函數(shù)值為.T.,否則為.F.。自變量含義同BOF函數(shù),缺省時(shí)默認(rèn)為當(dāng)前工作區(qū)。 
    4.記錄號(hào)測試函數(shù) 
    格式:REcNO([<工作區(qū)號(hào)>}(別名>]) 
    功能:返回指定或當(dāng)前工作區(qū)中當(dāng)前記錄的記錄號(hào),函數(shù)值為數(shù)值型。省略參數(shù)時(shí),默認(rèn)為當(dāng)前工作區(qū)。如果記錄指針在最后一個(gè)記錄之后,即EOF()為.T.,RECNO()返回比記錄總數(shù)大l的值。如果記錄指針在第一個(gè)記錄之前或者無記錄,即BOF()為.T.,REcONO()返回1。 
    5.記錄個(gè)數(shù)測試函數(shù) 
    格式:RECCOUNT([(工作區(qū)號(hào)|別名>]) 
    功能:返回當(dāng)前或指定表中記錄的個(gè)數(shù)。如果在指定的工作區(qū)中沒有表被打開,則函數(shù)值為O。如果省略參數(shù),則默認(rèn)為當(dāng)前工作區(qū)。RECCOUNT()返回的值不受SET r)EI。ETED和SET FIITER的影響,總是返回包括加有刪除標(biāo)記在內(nèi)的全部記錄數(shù)。 
    6.查找是否成功測試函數(shù) 
    格式:FOUND([<工作區(qū)號(hào)『別名>]) 
    功能:在當(dāng)前或指定表中,檢測是否找到所需的數(shù)據(jù)。如果省略參數(shù),則默認(rèn)為當(dāng)前工作區(qū)。數(shù)據(jù)搜索由FIND、SEEK、LOCATE或CONTINUE命令實(shí)現(xiàn)。如果這些命令搜索到所需的數(shù)據(jù)記錄,函數(shù)值為.T.,否則函數(shù)值為.F.。如果指定的工作區(qū)中沒有表被打開,則FOUND()返回.F.。如果用非搜索命令如GO移動(dòng)記錄指針,則函數(shù)值為.F [Page]
    7.文件是否存在測試函數(shù) 
    格式:FILE((文件名>) 
    功能:檢測指定的文件是否存在。如果文件存在,則函數(shù)值為.T,否則函數(shù)值為.F文件名必須是全稱,包括盤符、路徑和擴(kuò)展名,且(文件名)是字符型表達(dá)式。 
    8.判斷值介于兩個(gè)值之間的函數(shù) 
    格式:BETwEEN(<被測試表達(dá)式>,<下限表達(dá)式),(上限表達(dá)式)) 
    功能:判斷表達(dá)式的值是否介于相同數(shù)據(jù)類型的兩個(gè)表達(dá)式值之間。BETwEEN()首先計(jì)算表達(dá)式的值。如果一個(gè)字符、數(shù)值、日期、表達(dá)式的值介于兩個(gè)相同類型表達(dá)式的值之間,即被測表達(dá)式的值大于或等于下限表達(dá)式的值,小于或者等于上限表達(dá)式的值,BETW:EEN()將返回.T.值,否則返回.F 
    舉例: 
    gz一375 
    7 BETWEEN(gz,260,650) 
    輸出為.T 
    9.條件函數(shù)IIF 
    格式:IIF((邏輯型表達(dá)式),(表達(dá)式1),(表達(dá)式2>) 
    功能:若邏輯型表達(dá)式的值為.T.,函數(shù)值為(表達(dá)式1>的值,否則為<表達(dá)式2>的值。 
    舉例: 
    xb=\"女\" 
    ?IIF(xB=[男],l,IIF(Xb一[女],2,3)) 
    輸出為2。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多