【例5】在表文件STUD.DBF中,先按性別再按是否團員建立一個獨立復(fù)合索引文件SXBTY.CDX。
USE STUD
INDEX ON 性別+IIF(是否團員,’團員’,’非團員’) TAG 性別團員 OF SXBTY2)菜單方式
①打開表文件。
、谶x擇【顯示】|【表設(shè)計器】命令,打開表設(shè)計器對話框,選擇“索引”標(biāo)簽。
、墼谒饕休斎胨饕龢(biāo)識名,在類型的下拉列表框中確定一種索引類型,在表達式中輸入索引關(guān)鍵字表達式,在篩選中輸入確定參加索引的記錄條件,在排序序列下默認的是升序按鈕,單擊可改變?yōu)榻敌虬粹o。
、艽_定好各項后,選擇“確定”,關(guān)閉表設(shè)計器,同時索引建立完成。
、萃瑯拥姆椒ㄒ部梢詫⒁郧敖⒌乃饕{(diào)出,利用表設(shè)計器上的“插入”或“刪除”按鈕進行插入或刪除。
注意:用表設(shè)計器建立的索引都是結(jié)構(gòu)復(fù)合索引文件。
(3)索引文件的打開【格式1】USE<文件名>[INDEX<索引文件名表|?>][ORDER<數(shù)值表達式2>|<單索引文件>|[TAG]<標(biāo)識名>[OF<復(fù)合索引文件名>][ASCENDING|DESCENDING]]
【功能】打開指定的表文件及相關(guān)的索引文件
【說明】:
INDEX<索引文件名表>|?:表示打開的索引文件;如果選擇“?”,則系統(tǒng)將出現(xiàn)“打開”對話框,供用戶選擇索引文件名;如果<索引文件名表>
中的第一個索引文件是單索引文件,則它是主索引文件,若第一個索引文件是復(fù)合索引文件,則表文件的記錄將以物理順序被訪問。
<索引文件名表>:指定要打開的索引文件,索引文件中的文件擴展名可以省略,但如果存在同名的單索引文件和復(fù)合索引文件,必須帶擴展名。
<索引文件名表>中的單索引文件和復(fù)合索引文件的標(biāo)識有一個唯一的編號,編號最小值為1,編號規(guī)則為:先將單索引文件按它們在<索引文件名表>中的順序編號,再將結(jié)構(gòu)復(fù)合索引文件按標(biāo)識產(chǎn)生的順序連續(xù)編號,最后將獨立復(fù)合索引文件中的標(biāo)識先按它在<索引文件名表>中的順序,再按標(biāo)識產(chǎn)生的順序連續(xù)編號。
[ORDER]子句:指定主索引。選擇此選項時,主索引文件將不是<索引文件名表>中的第一個單索引文件,而是此選項指定的單索引文件或標(biāo)識。[ORDER]子句中各選項的含義如下:
<數(shù)值表達式2>指定主索引的編號,若<數(shù)值表達式2>的值為0,表示不設(shè)主索引。
<單索引文件>指定的單索引文件設(shè)置為主索引。
[TAG]<標(biāo)識名>[OF<復(fù)合索引文件名>]:表示將<復(fù)合索引文件名>中的指定標(biāo)識作為主索引。[OF<復(fù)合索引文件名>]缺省表示為結(jié)構(gòu)復(fù)合索引文件。
ASCENDING|DESCENDING:表示主索引被強制以升序或降序索引;缺省此選項,主索引按原有順序打開。
【格式2】SET INDEX TO[<索引文件名表>][ORDER<數(shù)值表達式>|<單索引文件名>|[TAG]<標(biāo)識名>[OF<復(fù)合索引文件名>][ASCENDING|DESCENDING]][ADDITIVE]
【功能】在已打開表文件的前提下,打開相關(guān)索引文件。
【說明】ADDITIVE:表示保留以前打開的索引文件。否則,除結(jié)構(gòu)復(fù)合索引文件外,以前打開的其他索引文件都將被關(guān)閉。(4)索引文件的關(guān)閉
【格式1】USE
【功能】關(guān)閉當(dāng)前工作區(qū)中打開的表文件及所有索引文件。
【格式2】SET INDEX TO
【功能】關(guān)閉當(dāng)前工作區(qū)中打開的所有單索引文件和獨立復(fù)合索引文件。
【格式3】CLOSE INDEXS
【功能】關(guān)閉當(dāng)前工作區(qū)中打開的所有單索引文件和獨立復(fù)合索引文件。
注意:結(jié)構(gòu)復(fù)合索引文件不能用以上命令關(guān)閉,它隨表文件的打開而打開,隨表文件的關(guān)閉而關(guān)閉。
(5)索引的刪除
1)標(biāo)識的刪除
【格式】DELETE TAG<標(biāo)識名1>[OF<復(fù)合索引文件名1>][,<標(biāo)識名2>[OF<復(fù)合索引文件名2>]]...
或:DELETE TAG ALL[OF<復(fù)合索引文件名>]
【功能】從指定的復(fù)合文件中刪除標(biāo)識
【說明】OF<復(fù)合索引文件名>:指定復(fù)合索引文件名,若缺省,則為結(jié)構(gòu)復(fù)合索引文件。
2)單索引文件的刪除
【格式】DELETE FILE<單索引文件名>
【功能】刪除指定的單索引文件
【說明】關(guān)閉的索引文件才能被刪除,文件名必須帶擴展名。
【例】刪除表文件STUD.DBF的單索引文件STUD.IDX及結(jié)構(gòu)復(fù)合索引文件中的所有標(biāo)識。
DELETE FILE STUD.IDX
USE STUD
DELETE TAG ALL(6)索引查詢(FIND、SEEK)
1)菜單方式
、偈紫却蜷_表文件。
、谶x擇【顯示】|【瀏覽】命令。
、圻x擇【表】|【轉(zhuǎn)到記錄】|【定位】命令,打開定位記錄對話框。
、茉凇白饔梅秶毕吕斜砜蛑羞x擇查詢范圍,在FOR或WHILE框中輸入查詢條件,選擇定位按鈕。系統(tǒng)將指針定位于符合條件的第一條記錄上。
2)索引查詢(FIND、SEEK)
LOCATE命令用于按條件進行順序定位,無論索引文件是否打開都可使用。在打開索引文件后,還可以用FIND、SEEK命令進行快速檢索。
a.FIND命令【格式】FIND<字符串>/<數(shù)值常量>
【功能】在表文件的主控索引中查找關(guān)鍵字值與<字符串>或<數(shù)值常量>相匹配的第一個記錄。
【說明】必須打開相應(yīng)的庫文件、主索引文件。
查詢字符串,字符串可以不用定界符括起來,但前后有空格的,則必須要括進來。
查詢常數(shù),必須使用索引關(guān)鍵字的完整值。
允許查詢字符型內(nèi)存變量,但必須使用宏替換函數(shù)。
由于索引文件中關(guān)鍵字表達式值相同的記錄總是排在一起的,可用SKIP、DISP命令來逐個查詢。
查詢完滿足條件的記錄后,不能自然給出提示,常借助于EOF()函數(shù)來判斷查詢是否完成。
多關(guān)鍵字查詢,建立索引時STR函數(shù)若沒有指定小數(shù)位,則應(yīng)補齊不足10位的空格。
如果用SET EXACT ON命令,則匹配必須是精確的。即FIND命令中的查詢內(nèi)容必須與記錄的關(guān)鍵字段值完全相等。如果用SETEXACT OFF命令,則匹配可以是不精確的,即只要FIND命令中的查詢內(nèi)容與記錄的關(guān)鍵字段值的左側(cè)相等即可。
相關(guān)推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |