VFP2.3 排序索引.ppt_第1頁
VFP2.3 排序索引.ppt_第2頁
VFP2.3 排序索引.ppt_第3頁
VFP2.3 排序索引.ppt_第4頁
VFP2.3 排序索引.ppt_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、Visual FoxPro6.0程序設(shè)計,教學課件,2020年8月23日12時41分,2,教 材,Visual FoxPro程序設(shè)計教程 鄭尚志等 編著 安徽大學出版社 2004.8 參考資料: 1全國計算機等級考試教材(二級) -Visual FoxPro程序設(shè)計 新大綱 考試中心 編著 高等教育出版社 2全國計算機等級考試(二級)教程 -Visual FoxPro程序設(shè)計 人民郵電出版社 2002大綱 3 Visual FoxPro程序設(shè)計(二級)教程 2002大綱 譚浩強主編 周山芙編著 清華大學出版社 4全國計算機等級考試教材(二級) -Visual FoxPro程序設(shè)計 新大綱 牛允

2、鵬 編著 電子工業(yè)出版社 5全國計算機等級考試 考試要點、題解與模擬試卷(二級Visual FoxPro ) 電子工業(yè)出版社 2004 6全國計算機等級考試考試網(wǎng)站 VFP相關(guān)內(nèi)容,2020年8月23日12時41分,3,排序與索引 P54,排序 什么是索引 索引類型 索引文件的類型 索引的創(chuàng)建 索引的使用,2020年8月23日12時41分,4,1.表的排序,1)排序 所謂排序,是指對表按指定字段值的大小,重新排列表中記錄到另一個表文件中。 命令方式: SORT TO ON /A/D/C ,/A/D/C范圍 FOR|WHILE FIELDS ,注意:,排序關(guān)鍵字、等,不能為備注型和通用型字段。,

3、/A和/D分別表示升序和降序(二者互斥),/C表示不區(qū)分字母的大小寫。對于數(shù)值型數(shù)據(jù)按值的大小進行排列,字符型數(shù)據(jù)按ASCII碼值的大小排列,漢字按拼音字母的ASCII碼值的大小排序,日期型數(shù)據(jù)按日期值排序。邏輯型數(shù)據(jù)排序時.T.F.,2020年8月23日12時41分,5,注意:,排序后的記錄存放在由指定的表中,若省略FIELDS ,則產(chǎn)生的排序表的結(jié)構(gòu)與當前表完全相同。 排序缺點是:當原始的表文件被修改后,必須重新排序;排序時產(chǎn)生的新表文件,將占用磁盤空間;當表較大時,排序處理費時。,若命令中包含范圍和FOR/WHILE短語,對指定范圍內(nèi)符合條件的記錄進行排序,缺省為All。,2020年8月

4、23日12時41分,6,例2 對DZ.DBF中的性別為“女”的記錄按姓名字段升序進行排列,產(chǎn)生一個名為XM.DBF的表文件。,USE TS SORT ON 姓名 TO XM FOR 性別=女 USE XM LIST,USE DZ,SORT ON 單位 /D TO WJPS,USE WJPS LIST,若要查看排序后的結(jié)果,則進行下面的操作.,思考:將DZ.DBF按職稱字段進行降序排序,產(chǎn)生一個名為DZZC.DBF,其中包含借書證號,姓名,性別,職稱, 字段。請自行完成。,例題,例1 對DZ.DBF中的記錄按單位字段進行降序排列,產(chǎn)生一個名為WJPS.DBF的表文件。 命令方式:,2020年8月

5、23日12時41分,7,例 題,3. 將圖書清單表文件TS.DBF第3條到第8條記錄按書名排序,生成表TSSM.DBF。 USE TS GO 2 SORT TO TSSM ON 書名 NEXT 6 USE TSSM BROWSE,4.對圖書清單表TS.DBF按出版社升序排列,出版社相同的按單價降序排列,生成表文件TSCB.DBF。 USE TS SORT TO TSCB ; ON 出版單位,單價/D USE TSCB DISPLAY ALL,索引文件是根據(jù)某個關(guān)鍵字表達式建立起來的。關(guān)鍵字表達式可以是一個字段或幾個字段的組合,關(guān)鍵字表達式又稱為索引表達式或索引項。 索引類似于一本書的目錄。,2

6、.4.2 索引,索引文件的特點:,在索引文件中僅包含兩項內(nèi)容:一項是表中每條記錄的索引關(guān)鍵字表達式的值,另一項是與其對應(yīng)的記錄號。,由于索引文件中只有兩項數(shù)據(jù),所以索引排序不但節(jié)省存貯空間,而且可以提高數(shù)據(jù)表的查找速度。,2.4.2 單項索引文件與復合索引文件(按擴展名),1兩類索引文件 索引文件有兩種類型:單項索引文件,復合索引文件,(1)單項索引文件 單項索引文件是指根據(jù)一個索引項建立的索引文件,擴展名為.IDX,(2)復合索引文件 復合索引文件是根據(jù)多個索引項建立起來的索引文件,擴展名為.CDX,復合索引文件可以包含多個索引,其中每個索引用一個索引標識符(INDEX TAG)表示。若索引

7、表達式由一個字段組成,缺省情況下將自動把字段名命名為索引標識符。,結(jié)構(gòu)化復合索引文件:它具有與數(shù)據(jù)表文件相同的文件名,且隨數(shù)據(jù)表文件的打開而自動打開,所以當數(shù)據(jù)表文件被修改時,相關(guān)的索引順序也會自動調(diào)整。 非結(jié)構(gòu)化復合索引文件:這種文件的文件名必須根據(jù)需要自行指定,不能隨數(shù)據(jù)表文件自動打開,而必須用相應(yīng)的命令打開。,復合索引文件又分為兩種:結(jié)構(gòu)化復合索引文件和非結(jié)構(gòu)化復合索引文件(或稱獨立復合索引文件)。,2020年8月23日12時41分,11,按功能來分,VFP系統(tǒng)提供了四種不同的索引類型 1.主索引(Primary Index):是在指定字段或表達式中不允許出現(xiàn)重復值的索引。主索引主要用于

8、建立永久關(guān)系的主數(shù)據(jù)表中,或者建立參照完整性的被引用表中。 注:一個數(shù)據(jù)表只能建一個主索引,如果表中有多個字段值都可以唯一確定記錄的順序,則這些字段值可建立候選索引。,2020年8月23日12時41分,12,2 候選索引(Candidate Index) :像主索引一樣,它的索引表達式的值是唯一能夠標識每個記錄處理順序的值。 注:一個數(shù)據(jù)表可以建立多個候選索引,如果一個表中已有主索引,則只能建立候選索引。 3 普通索引(Regular Index) :可用來對記錄排序和搜索記錄,它不強迫記錄中的數(shù)據(jù)具有唯一性。即如果多個記錄的索引表達式的值相同,則可以重復存儲,并用獨立的指針指向各個記錄。 4

9、 唯一索引(Unique Index) :創(chuàng)建此索引文件時,它忽略有重復索引值的記錄,對有重復索引值的記錄,則只選出第一個具有此索引值的記錄。,2020年8月23日12時41分,13,四 索引的創(chuàng)建 1)利用表設(shè)計器創(chuàng)建索引,操作方法:打開表,單擊“顯示”菜單,選擇“表設(shè)計器”;在表設(shè)計器窗口,單擊索引選項卡,再選擇以下參數(shù): *在排序選項中,選擇索引方向:升序或降序。 *在索引名選項中,輸入索引標識名。 *在類型選項中,選擇索引類型。 *在表達式選項中,輸入索引字段名,或者索引表達式。 *在篩選選項中,限制記錄的輸出范圍。 例5:利用表設(shè)計器,為表TS按“總編號”和“書名”字段建立候選索引。

10、,2020年8月23日12時41分,14,2) 用Index命令 INDEX ON TAG | TO FOR ASCENDING|DESCENDING UNIQUE|CANDIDATE ADDITIVE 說明:TO |TAG :創(chuàng)建單項索引文件或復合索引文件; ASCENDING升序,DESCENDING降序 UNIQUE建立唯一索引 CANDIDATE創(chuàng)建候選結(jié)構(gòu)索引標識。 ADDITIVE建立索引時不關(guān)閉已經(jīng)打開的索引文件。 注:不能對備注型字段和通用型字段建立索引。,2020年8月23日12時41分,15,例6:將TS.DBF按“作者”字段升序建立單索引文件zz USE TS INDEX

11、 ON 作者 TO zz BROWSE 例7:對TS 按“出版社”和“分類號”字段建立索引標識cbfl索引文件 USE XSCJ INDEX ON 出版社+分類號 Tag cbfl LIST 例8:對XSCJ表文件按“筆試”成績字段和“姓名”字段建立索引標識JX的復合索引 USE XSCJ INDEX ON STR(筆試,3)+姓名 TAG JX DISPLAY ALL,操作演示:,2020年8月23日12時41分,16,五 索引的使用 1 按索引字段排序 利用表設(shè)計器以字段名建立索引,重新排列表中數(shù)據(jù)的順序,操作方法如下: *利用表設(shè)計器對表中若干字段,以字段名建立索引。 *打開表菜單,選擇

12、屬性,進入工作區(qū)屬性窗口。 *在 工作區(qū)屬性窗口,打開索引順序下拉列表,選擇索引字段名,按確定按鈕。 如:利用表設(shè)計器,為表“DA”中的“工資”字段按降序建立普通索引,并顯示排序后的結(jié)果。 2 按索引表達式排序 允許用戶指定多個字段對記錄排序,這時可以使用索引表達式,重新排列表中數(shù)據(jù)的順序。 如:利用表設(shè)計器,為表DA中的性別和工資兩字段建立普通索引,并顯示排序后的結(jié)果。 注:*索引表達式可以通過表達式生成器生成。 *在索引表達式中要求連字符左右的類型要一致,若不一致,應(yīng)利用類型轉(zhuǎn)換函數(shù)轉(zhuǎn)換成一致。,2020年8月23日12時41分,17,打開索引文件 1.USE INDEX 2.SET IN

13、DEX TO ADDITIVE 關(guān)閉索引文件 1.SET INDEX TO 2.CLOSE INDEX 3.CLOSE ALL 確定主控索引 SET ORDER TO | |TAG OF 復合索引文件名 ASCENDING|DESCENDING 重新索引 REINDEX,2020年8月23日12時41分,18,(4) 刪除索引標識 DELETE TAG OF , OF . 或DELETE TAG ALL OF (5)刪除索引文件 Dele file 應(yīng)先關(guān)閉后刪除,2020年8月23日12時41分,19,練 習,1.SORT命令執(zhí)行結(jié)果是( ) A.產(chǎn)生一新表 B.產(chǎn)生一個內(nèi)存變量 C.不改變記錄的排列順序 D.只能升序.,A,C,B,D,2.單項索引文件的擴展名為( ) A. .DBF B. .FPT C. .IDX D. .CDX,3. 若所建立索引的字段值不允許重復,并且一個表中只能創(chuàng)建一個,則應(yīng)該是( )。 A) 惟一索引 B) 主索引 C) 候選索引 D) 普通索引,2020年8月23日12時41分

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論