[計算機軟件及應(yīng)用]Visual FoxPro 60的操作ppt課件_第1頁
[計算機軟件及應(yīng)用]Visual FoxPro 60的操作ppt課件_第2頁
[計算機軟件及應(yīng)用]Visual FoxPro 60的操作ppt課件_第3頁
[計算機軟件及應(yīng)用]Visual FoxPro 60的操作ppt課件_第4頁
[計算機軟件及應(yīng)用]Visual FoxPro 60的操作ppt課件_第5頁
已閱讀5頁,還剩84頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、2021/5/181在關(guān)系型數(shù)據(jù)庫中,一個關(guān)系就是一張二維表。二維表以文件形式存儲于計算機中,稱為表文件簡稱表,表文件擴展名為.dbf。表是處理數(shù)據(jù)和建立關(guān)系型數(shù)據(jù)庫的根本單元,是數(shù)據(jù)庫的根本組成成分。Visual FoxPro系統(tǒng)有兩種表:數(shù)據(jù)庫表和自由表。二者可以互相轉(zhuǎn)換。2021/5/1822.1 表的創(chuàng)立2.2 表的根本操作2.3 表的排序與索引2.4 表的查詢2.5 表的統(tǒng)計與計算2.6 多表操作2021/5/1832.1 表的創(chuàng)立表由表構(gòu)造和表記錄兩部分組成。表構(gòu)造描繪了數(shù)據(jù)存放形式以及存儲的順序,也就是指一張表的表頭構(gòu)造,即字段的根本屬性。確定了表的字段,就完成了對表機構(gòu)的定義。

2、表記錄即表中的一行,是表要保存的數(shù)據(jù)主體。數(shù)據(jù)由記錄組成,字段是構(gòu)成記錄的根本單元。創(chuàng)立一個表,首先要建立表構(gòu)造,然后再輸入表記錄。2021/5/1842.1.1 表構(gòu)造的設(shè)計表機構(gòu)的設(shè)計就是定義表中各個字段的屬性。字段的屬性包括字段名、字段類型、字段寬度、小數(shù)位數(shù)和空值支持。2021/5/1851.字段名字段又稱為字段變量,字段名即每個字段的名字,必須以字母或漢字開頭,可由字母、數(shù)字、漢字、下劃線組成,字母大小寫無區(qū)別,但其中不允許出現(xiàn)空格或其他字符。自由表的字段名最多可由10個字符組成,數(shù)據(jù)庫表的字段名最多可由128個字符組成。當(dāng)數(shù)據(jù)庫表轉(zhuǎn)換成自由表時,此表的長字段名將截短為10個字符。2

3、021/5/1862.字段類型字段類型決定了存儲在該字段變量中的數(shù)據(jù)類型。Visual FoxPro定義了13種字段類型,常用的字段類型有字符型C、數(shù)值型N、貨幣型Y、日期型D、日期時間型T、邏輯型L、備注型M和通用型G。3.字段寬度字段寬度規(guī)定了字段所能包容數(shù)據(jù)的最大字節(jié)數(shù)。2021/5/1874.小數(shù)位數(shù)小數(shù)位數(shù)規(guī)定了數(shù)值型數(shù)據(jù)要保存幾位小數(shù)。此時的字段寬度=整數(shù)位數(shù)+1+小數(shù)位數(shù)。5.NULL值用于說明某個字段是否允許NULL值空值。NULL值是指無明確的值。NULL值不等同于零或空格。一個NULL值不能認為比某個值包括另一個NULL值大或小,相等或不等。作為關(guān)鍵字的字段不允許空值。20

4、21/5/1882.1.2 表的創(chuàng)立1.表構(gòu)造的創(chuàng)立【格式】CREATE 表文件名 【功能】創(chuàng)立表的構(gòu)造【說明】表文件的擴展名“.dbf可以省略不寫。此命令所創(chuàng)立的表文件是保存在Visual FoxPro的默認途徑下,Visual FoxPro的默認途徑可以通過相關(guān)設(shè)置進展更改。 2021/5/189【例2.1】創(chuàng)立學(xué)生表 。CREATE 學(xué)生在命令窗口中執(zhí)行上述命令后,那么彈出表設(shè)計器。將各字段的字段名、類型、寬度和小數(shù)位數(shù)等輸入到表設(shè)計器中,單擊“確定按鈕,即可完成表構(gòu)造的創(chuàng)立。如下圖。2021/5/18102.表記錄的輸入在表設(shè)計器中設(shè)置好表構(gòu)造后,單擊“確定按鈕,那么會彈出如下圖的對話

5、框,詢問用戶是否如今輸入記錄。假如單擊“是按鈕,那么會翻開如下圖的輸入記錄窗口。2021/5/18112.2 表的根本操作 表的根本操作包括表的翻開與關(guān)閉、表構(gòu)造的顯示與修改、表記錄的顯示、記錄指針定位、表記錄的修改、表記錄的添加、表記錄的刪除和恢復(fù)、表的復(fù)制及表與數(shù)組間的數(shù)據(jù)傳遞。2021/5/18122.2.1 表的翻開與關(guān)閉 1.表的翻開【格式】USE【功能】翻開指定的表。【說明】表文件的擴展名“.dbf可以省略不寫。新翻開的表文件,記錄指針指向第一條記錄。 2021/5/18132.表的關(guān)閉1使用USE命令【格式】USE【功能】關(guān)閉當(dāng)前工作區(qū)中已經(jīng)翻開的表文件。2使用CLEAR命令【格

6、式】CLEAR ALL【功能】關(guān)閉所有工作區(qū)中已經(jīng)翻開的表文件、索引文件、格式文件和備份文件等,同時釋放所有的內(nèi)存變量,并選擇工作區(qū)1為當(dāng)前工作區(qū)。2021/5/18143使用CLOSE命令【格式】CLOSE ALL【功能】關(guān)閉各種類型文件,并選擇工作區(qū)1為當(dāng)前工作區(qū)。4退出Visual FoxPro系統(tǒng)【格式】QUIT【功能】關(guān)閉所有翻開的文件,退出Visual FoxPro 系統(tǒng),并返回到操作系統(tǒng)。2021/5/18152.2.2 表構(gòu)造的顯示與修改1.表構(gòu)造的顯示【格式】LIST|DISPLAY STRUCTURE TO PRINTTO FILE 【功能】顯示當(dāng)前表文件的構(gòu)造。2.表構(gòu)造

7、的修改【格式】MODIFY STRUCTURE 【功能】修改當(dāng)前表文件的構(gòu)造2021/5/1816【例2.3】顯示學(xué)生表的構(gòu)造。USE 學(xué)生 LIST STRUCTURE顯示結(jié)果如下圖。2021/5/18172.2.3 表記錄的顯示【格式】LIST|DISPLAY FIELDS FOR WHILE OFF TO PRINTER PROMPT|TO FILE 【功能】將當(dāng)前表文件的記錄按照指定的選項進展顯示。2021/5/1818【說明】FIELDS :用來指定要顯示的字段,關(guān)鍵字FIELDS可以省略不寫。假如將FIELDS 全部省略,那么默認顯示表中所有字段。:用來指定要顯示的記錄范圍。范圍子

8、句共有4種指定方式,分別是ALL、RECORD N、NEXT N和REST。FOR 和WHILE :用來指定要顯示的記錄所要滿足的挑選條件。二者的區(qū)別在于FOR 指定表中滿足挑選條件的所有記錄,WHILE 指定表中從當(dāng)前記錄開場到第一次條件不滿足為止之前的所有記錄。命令動詞DISPLAY和LIST的區(qū)別:DISPLAY是分屏顯示,LIST是滾屏顯示;假如同時省略和子句,DISPLAY只顯示當(dāng)前記錄,而LIST那么顯示全部記錄。OFF選項:假設(shè)不需要顯示記錄號,那么使用OFF選項。LIST和DISPLAY兩條命令在執(zhí)行過程中都可能會引起記錄指針的挪動。2021/5/1819【例2.5】顯示學(xué)生表

9、中全部記錄的學(xué)號、姓名、性別、專業(yè)和入學(xué)成績字段。USE 學(xué)生LIST FIELDS 學(xué)號,姓名,性別,專業(yè),入學(xué)成績顯示結(jié)果如下圖。2021/5/1820【例2.7】顯示學(xué)生表中前5條記錄的全部信息。USE 學(xué)生 LIST NEXT 5顯示結(jié)果如下圖。2021/5/1821【例2.8】顯示學(xué)生表中計算機專業(yè)學(xué)生的學(xué)號、姓名和專業(yè)信息。USE 學(xué)生LIST 學(xué)號,姓名,專業(yè) FOR 專業(yè)=計算機顯示結(jié)果如下圖。2021/5/1822【例2.10】顯示學(xué)生表中入學(xué)成績在590分至610分之間的少數(shù)民族學(xué)生的全部信息。USE 學(xué)生DISPLAY FOR 入學(xué)成績=590 AND 入學(xué)成績=610

10、AND NOT 漢族否顯示結(jié)果如下圖。 2021/5/18232.2.4 記錄指針定位表的記錄指針,是一個指示器,用以指示當(dāng)前被操作的記錄,即當(dāng)前記錄。假如要對某條記錄進展操作,必須挪動記錄指針,使其指向該條記錄,這就是記錄指針的定位。剛翻開的表,即使是空表,記錄指針都自動指向記錄號為1的記錄。記錄指針的定位有絕對定位、相對定位和查詢定位。2021/5/18241.絕對定位【格式】GOTO RECORD【功能】將記錄指針絕對定位到“記錄號所指示的記錄上?!菊f明】絕對定位與是否翻開索引文件沒有關(guān)系。 2021/5/1825【例2.12】顯示學(xué)生表中第3條和第5條記錄。USE 學(xué)生GO 3DISP

11、LAY5?RECNODISPLAY結(jié)果如下圖。2021/5/18262.相對定位【格式1】SKIP 【功能】將記錄指針從當(dāng)前記錄位置向上或向下挪動假設(shè)干條記錄。 【格式2】GOTO 【功能】將記錄指針移到表文件的首記錄或尾記錄。2021/5/1827【例2.13】寫出以下命令執(zhí)行后的結(jié)果。USE 學(xué)生SKIP 2 ?RECNOGO TOP?RECNO?BOF,EOFSKIP -1?BOF,EOF?RECNOGO BOTTOM ?RECNO?BOF,EOF SKIP ?RECNO?BOF,EOF2021/5/18282.2.5 表記錄的修改1.編輯修改【格式】EDIT|CHANGEFIELDSF

12、OR 【功能】按照給定的范圍和條件編輯修改當(dāng)前翻開的表文件的記錄。執(zhí)行該命令后,系統(tǒng)翻開記錄編輯窗口,供用戶進展記錄的修改。2.閱讀修改【格式】BROWSEFIELDSFOR【功能】按照給定的條件閱讀修改當(dāng)前翻開的表文件的記錄。執(zhí)行該命令后,系統(tǒng)翻開記錄閱讀窗口,供用戶進展記錄的修改。2021/5/18293.交換修改【格式】REPLACE WITH ADDITIVE, WITH ADDITIVE,FOR 【功能】用指定表達式的值交換當(dāng)前表中滿足條件記錄的指定字段的值。2021/5/1830【例2.17】將學(xué)生表中所有少數(shù)民族學(xué)生的入學(xué)成績加10分。USE 學(xué)生REPLACE 入學(xué)成績 WIT

13、H 入學(xué)成績+10 FOR NOT 漢族否LIST顯示結(jié)果如下圖。 2021/5/1831【例2.18】求出入學(xué)成績表中每個學(xué)生的總分。USE 入學(xué)成績REPLACE ALL 總分 WITH 語文+數(shù)學(xué)+外語+綜合LIST顯示結(jié)果如下圖。 2021/5/18322.2.6 表記錄的添加 1.插入記錄【格式】INSERT BEFORE BLANK【功能】在當(dāng)前表的指定位置上插入一條或多條記錄。 【例2.19】在學(xué)生表中第2條記錄之后插入一條新記錄,在第5條記錄之前插入一條空白記錄。USE 學(xué)生GO 2INSERTGO 5INSERT BEFORE BLANK2021/5/18332.追加記錄【格

14、式】APPEND BLANK【功能】在當(dāng)前表的表尾追加一條或多條記錄?!纠?.20】在學(xué)生表的表尾追加一條空白記錄。USE 學(xué)生APPEND BLANK3.從另一個表文件中追加記錄【格式】APPEND FROM FIELDS FOR 【功能】從指定表文件中讀取數(shù)據(jù)并追加到當(dāng)前表文件的末尾。2021/5/1834【例2.21】現(xiàn)有一空表,表名為“計算機專業(yè)學(xué)生信息,表構(gòu)造與學(xué)生表完全一樣。要求從學(xué)生表中讀取計算機專業(yè)的學(xué)生信息追加到此表中。USE 計算機專業(yè)學(xué)生信息APPEND FROM 學(xué)生 FOR 專業(yè)=計算機LIST顯示結(jié)果如下圖。2021/5/18352.2.7 表記錄的刪除和恢復(fù)1.邏

15、輯刪除記錄【格式】DELETE FOR WHILE 【功能】對當(dāng)前表中指定的范圍內(nèi)滿足條件的記錄加上刪除標(biāo)記。2021/5/1836【例2.22】邏輯刪除學(xué)生表中入學(xué)成績低于600分的學(xué)生記錄。USE 學(xué)生DELETE FOR 入學(xué)成績600LIST顯示結(jié)果如下圖。2021/5/18372.隱藏邏輯刪除的記錄【格式】SET DELETED ON|OFF【功能】將表中已經(jīng)邏輯刪除的記錄隱藏或顯示?!纠?.23】隱藏例3.22中學(xué)生表中邏輯刪除的記錄。USE 學(xué)生SET DELETED ONLIST顯示結(jié)果如下圖。2021/5/18383.恢復(fù)邏輯刪除的記錄【格式】RECALL FOR WHILE

16、 【功能】對當(dāng)前表中指定范圍內(nèi)滿足條件并已邏輯刪除的記錄取消其刪除標(biāo)記,恢復(fù)為正常記錄。2021/5/1839【例2.24】恢復(fù)學(xué)生表中所有被邏輯刪除的記錄。USE 學(xué)生RECALL ALLLIST顯示結(jié)果如下圖。2021/5/18404.物理刪除已被邏輯刪除的記錄【格式】PACK【功能】將當(dāng)前表中所有帶刪除標(biāo)記的記錄徹底從表中刪除。5.物理刪除全部記錄【格式】ZAP【功能】物理刪除當(dāng)前表中的全部記錄。2021/5/1841【例2.25】邏輯刪除計算機專業(yè)學(xué)生信息表中男生的記錄后再將其物理刪除。USE 計算機專業(yè)學(xué)生信息DELETE FOR 性別=男LISTPACKLIST顯示結(jié)果如下圖。20

17、21/5/18422.2.8 表的復(fù)制1.復(fù)制表構(gòu)造【格式】COPY STRUCTURE TOFIELDS【功能】將當(dāng)前表的構(gòu)造復(fù)制到指定的表中。僅復(fù)制當(dāng)前表的構(gòu)造,不復(fù)制其記錄數(shù)據(jù)。【例2.26】將學(xué)生表的學(xué)號、姓名、性別、專業(yè)和入學(xué)成績字段復(fù)制給新表JGFZ。USE 學(xué)生COPY STRUCTURE TO JGFZ FIELDS 學(xué)號,姓名,性別,專業(yè),;入學(xué)成績2021/5/18432.復(fù)制表文件【格式】COPY TO FIELDSFOR【功能】將當(dāng)前表中的數(shù)據(jù)與構(gòu)造同時復(fù)制到指定的表文件中。此命令還可以將當(dāng)前表復(fù)制生成一個其他格式的數(shù)據(jù)文件?!纠?.27】將學(xué)生表復(fù)制生成新表STUDE

18、NT,其構(gòu)造和記錄完全一樣。USE 學(xué)生COPY TO STUDENT2021/5/18442.2.9 表與數(shù)組間的數(shù)據(jù)傳遞1.將表的單個記錄的值傳遞到一維數(shù)組中【格式】SCATTER FIELDS TO 【功能】將當(dāng)前表中當(dāng)前記錄指定字段的內(nèi)容依次存入數(shù)組中。2.將數(shù)組傳遞到表的當(dāng)前記錄中【格式】GATHER FROM FIELDS MEMO【功能】將數(shù)組中的數(shù)據(jù)作為一條記錄傳遞到當(dāng)前表的當(dāng)前記錄中,以更新各個字段的內(nèi)容。2021/5/18453.將表的多條記錄復(fù)制到二維數(shù)組中【格式】COPY TO ARRAY FIELDS FOR【功能】將把指定范圍內(nèi)滿足條件的所有記錄的有關(guān)字段內(nèi)容全部復(fù)

19、制到指定的數(shù)組中。4.從數(shù)組向表傳遞多個記錄【格式】APPEND FROM ARRAY FOR FIELDS 【功能】將滿足條件的數(shù)組行的數(shù)據(jù)按記錄形式依次添加到當(dāng)前表中,但該命令將忽略備注型字段。2021/5/18462.3 表的排序與索引表中的記錄是按照輸入記錄時的先后順序即物理順序排列存放的。但在實際的數(shù)據(jù)處理應(yīng)用中,表中的數(shù)據(jù)量很大,為了方便迅速查找及處理數(shù)據(jù),就需要將表中的記錄按一定的順序重新排列。在Visual FoxPro中提供了兩種重新排列數(shù)據(jù)的方法:排序和索引。2021/5/18472.3.1 排序【格式】SORT TO ON /A|/D/C,/A|/D/C FIELDS F

20、OR 【功能】對當(dāng)前表中的記錄按指定的字段進展排序,并將排序后的記錄保存到一個新表中。2021/5/1848【例2.28】將學(xué)生表中所有男生的記錄按入學(xué)成績從高到低進展排序,生成新表NSCJ。USE 學(xué)生SORT TO NSCJ ON 入學(xué)成績/D FOR 性別=男USE NSCJLIST顯示結(jié)果如下圖。2021/5/1849【例2.29】將學(xué)生表中的所有記錄按專業(yè)升序排列,專業(yè)一樣的按入學(xué)成績降序排列,生成新表ZYCJ,只包含學(xué)號、姓名、專業(yè)和入學(xué)成績4個字段。USE 學(xué)生SORT TO ZYCJ ON 專業(yè),入學(xué)成績/D FIELDS 學(xué)號,姓名,專業(yè),;入學(xué)成績USE ZYCJLIST顯

21、示結(jié)果如下圖。2021/5/18502.3.2 索引1.索引的定義索引是按指定的關(guān)鍵字表達式將表中記錄從邏輯上進展有序排列的技術(shù)。索引是以索引文件的形式存在的。索引文件決定的記錄的排列順序稱為邏輯順序。一個表文件可以創(chuàng)立多個索引文件,索引文件必須與表文件一起使用,而不能單獨使用。2021/5/18512.索引文件的類型索引文件的類型有兩種:單索引文件和復(fù)合索引文件。單索引文件是根據(jù)一個索引關(guān)鍵字表達式建立的索引文件,其擴展名為.idx。復(fù)合索引文件中可包含多個索引標(biāo)識,復(fù)合索引文件的擴展名為.cdx。復(fù)合索引文件又分為兩種:構(gòu)造復(fù)合索引文件和非構(gòu)造復(fù)合索引文件。構(gòu)造復(fù)合索引文件的主文件名與對應(yīng)

22、的表文件的主文件名同名,其擴展名為.cdx。構(gòu)造復(fù)合索引文件隨表的翻開而自動翻開,隨表的關(guān)閉而自動關(guān)閉。非構(gòu)造復(fù)合索引文件的主文件名由用戶指定,其擴展名為.cdx。2021/5/18523.索引的類型主索引候選索引 普通索引 唯一索引 2021/5/18534.索引文件的建立1單索引文件的建立【格式】INDEX ON TO UNIQUE FOR ADDITIVE【功能】對當(dāng)前表文件按指定的索引關(guān)鍵字表達式升序建立普通索引或唯一索引,并存儲在單索引文件中。2021/5/1854【例2.30】將學(xué)生表中的所有記錄按入學(xué)成績建立單索引文件。USE 學(xué)生INDEX ON 入學(xué)成績 TO RXCJLIS

23、T顯示結(jié)果如下圖。2021/5/1855【例2.31】將學(xué)生表中的所有記錄按專業(yè)和入學(xué)成績建立單索引文件。USE 學(xué)生INDEX ON 專業(yè)+STR入學(xué)成績,5,1 TO ZYCJLIST顯示結(jié)果如下圖。2021/5/18562構(gòu)造復(fù)合索引文件的建立【格式】INDEX ON TAG UNIQUE|CANDIDATE ASCENDING|DESCENDING FOR ADDITIVE【功能】對當(dāng)前表文件按指定的索引關(guān)鍵字表達式升序或降序建立普通索引、唯一索引、候選索引,并以索引標(biāo)識的形式存儲在與表同名的構(gòu)造復(fù)合索引文件中。2021/5/1857【例2.33】將學(xué)生表中的所有記錄按入學(xué)成績降序建立

24、構(gòu)造復(fù)合索引文件的索引標(biāo)識。USE 學(xué)生INDEX ON 入學(xué)成績 TAG CJ DESCENDINGLIST顯示結(jié)果如下圖。2021/5/18583非構(gòu)造復(fù)合索引文件的建立【格式】INDEX ON TAG OF UNIQUEASCENDING|DESCENDING FOR ADDITIVE【功能】對當(dāng)前表文件按指定的索引關(guān)鍵字表達式升序或降序建立普通索引或唯一索引,并以索引標(biāo)識的形式存儲在非構(gòu)造復(fù)合索引文件中。2021/5/1859【例2.34】為學(xué)生表建立一個名為FJG的非構(gòu)造復(fù)合索引文件,其中包含一個按專業(yè)建立的索引標(biāo)識ZY。USE 學(xué)生INDEX ON 專業(yè) TAG ZY OF FJG

25、LIST顯示結(jié)果如下圖。2021/5/18605.索引文件的翻開1同時翻開表和索引文件【格式】USE INDEX ORDER|TAGOFASCENDING|DESCENDING【功能】翻開指定表文件的同時翻開相關(guān)的索引文件。2021/5/1861【例2.35】在翻開學(xué)生表的同時翻開單索引文件RXCJ和ZYCJ,指定ZYCJ為主控索引。USE 學(xué)生 INDEX ZYCJ,RXCJLIST顯示結(jié)果如下圖。2021/5/18622翻開表后再翻開索引文件【格式】SET INDEX TOORDER|TAGOFASCENDING|DESCENDING【功能】在已翻開表文件的前提下,翻開相關(guān)索引文件?!纠?

26、.36】翻開學(xué)生表的兩個單索引文件RXCJ和ZYCJ,指定ZYCJ為主控索引。USE 學(xué)生SET INDEX TO ZYCJ,RXCJ2021/5/18636.主控索引的指定【格式】SET ORDER TO |TAGOFASCENDING|DESCENDING【功能】指定主控索引?!纠?.37】在學(xué)生表已經(jīng)翻開的索引文件中,重新指定RXCJ為主控索引。USE 學(xué)生SET INDEX TO ZYCJ,RXCJLISTSET ORDER TO RXCJ2021/5/18647.索引文件的關(guān)閉【格式1】USE【功能】關(guān)閉當(dāng)前工作區(qū)中翻開的表文件及所有索引文件?!靖袷?】SET INDEX TO【功能

27、】關(guān)閉當(dāng)前工作區(qū)中翻開的所有單索引文件和非構(gòu)造復(fù)合索引文件,而表文件和構(gòu)造復(fù)合索引文件保持翻開狀態(tài)?!靖袷?】CLOSE INDEX【功能】關(guān)閉當(dāng)前工作區(qū)中翻開的所有單索引文件和非構(gòu)造復(fù)合索引文件,而表文件和構(gòu)造復(fù)合索引文件保持翻開狀態(tài)。2021/5/18658.索引文件的更新【格式】REINDEX【功能】按照原先創(chuàng)立索引的規(guī)那么重新創(chuàng)立索引文件。 2021/5/18662.4 表的查詢查詢是指按照指定的查找條件從數(shù)據(jù)表中查找所需的記錄。在數(shù)據(jù)處理的實際應(yīng)用中,經(jīng)常需要在大量的數(shù)據(jù)中進展查詢操作,查詢是檢索數(shù)據(jù)的主要方法。Visual FoxPro提供的查詢方法有順序查詢和索引查詢。2021/

28、5/18672.4.1 順序查詢【格式】LOCATE FOR WHILE【功能】按順序搜索表從而找到滿足指定條件的第一條記錄?!纠?.38】查詢學(xué)生表中計算機專業(yè)女生的信息。USE 學(xué)生LOCATE FOR 專業(yè)=“計算機 AND 性別=女?FOUNDDISPLAYCONTINUEDISPLAY2021/5/18682.4.2 索引查詢1.FIND查詢【格式】FIND |【功能】在表中查找其主控索引關(guān)鍵字值與或相匹配的第一條記錄?!纠?.39】查詢學(xué)生表中姓名為“劉閱的記錄信息。USE 學(xué)生INDEX ON 姓名 TO XMFIND 劉閱?FOUNDDISPLAY顯示結(jié)果如圖所示。2021/5

29、/18692.SEEK查詢【格式】SEEK 【功能】在表中查找其主控索引關(guān)鍵字值與指定表達式的值相匹配的第一條記錄?!纠?.40】查詢學(xué)生表中所有少數(shù)民族學(xué)生的信息。USE 學(xué)生INDEX ON 漢族否 TO MZSEEK .F.?FOUNDDISPLAYSKIP2021/5/1870DISPLAYSKIPDISPLAY顯示結(jié)果如下圖。2021/5/1871【例2.41】查詢學(xué)生表中計算機專業(yè)男生的信息。USE 學(xué)生INDEX ON 專業(yè)+性別 TO ZYXBSEEK “計算機男?FOUNDDISPLAYSKIPDISPLAY顯示結(jié)果如下圖。2021/5/18722.5 表的統(tǒng)計與計算統(tǒng)計與計

30、算也是數(shù)據(jù)處理應(yīng)用中常用的一類操作。Visual FoxPro主要提供了5個相關(guān)的命令,分別是統(tǒng)計記錄數(shù)、求和、求平均值、綜合計算和分類匯總。2021/5/18732.5.1 統(tǒng)計記錄個數(shù)【格式】COUNT FORWHILETO 【功能】統(tǒng)計當(dāng)前表中指定范圍內(nèi)滿足指定條件的記錄個數(shù)?!纠?.42】統(tǒng)計學(xué)生表中所有少數(shù)民族學(xué)生的人數(shù)。USE 學(xué)生COUNT FOR NOT 漢族否 TO X?少數(shù)民族學(xué)生人數(shù)是:,X2021/5/18742.5.2 求和【格式】SUM FORWHILETO 【功能】對指定范圍內(nèi)滿足條件的記錄按指定的各個表達式分別求和?!纠?.43】對入學(xué)成績表中所有學(xué)生的語文、數(shù)

31、學(xué)、外語三科成績分別求和。USE 入學(xué)成績SUM 語文,數(shù)學(xué),外語2021/5/18752.5.3 求平均值【格式】AVERAGE FORWHILETO 【功能】對指定范圍內(nèi)滿足條件的記錄按指定的各個表達式分別求平均值?!纠?.44】對學(xué)生表中所有學(xué)生的入學(xué)成績求平均分。USE 學(xué)生AVERAGE 入學(xué)成績2021/5/18762.5.4 綜合計算【格式】CALCULATE FOR WHILE TO【功能】分別計算當(dāng)前表中表達式表的值。【例2.45】分別統(tǒng)計計算學(xué)生表中的學(xué)生總數(shù)、平均入學(xué)成績和最高入學(xué)成績。USE 學(xué)生CALCULATE CNT,AVG入學(xué)成績,MAX入學(xué)成績2021/5/1

32、8772.5.5 分類匯總【格式】TOTAL TO ON FIELDS FOR WHILE【功能】將當(dāng)前表中的記錄進展分類匯總,并把匯總的結(jié)果存入生成的新表中。【例2.46】將學(xué)生表中的記錄按性別對入學(xué)成績進展匯總,生成匯總表CJHZ。USE 學(xué)生INDEX ON 性別 TO XBTOTAL TO CJHZ ON 性別USE CJHZLIST2021/5/18782.6 多表操作前面幾節(jié)介紹的表操作都是在默認的同一個工作區(qū)中進展的,而Visual FoxPro規(guī)定一個工作區(qū)最多只能翻開一個表,因此,當(dāng)翻開一個新表時,以前翻開的表就被自動關(guān)閉了,那么進展的表操作始終都是針對單個表的。但在數(shù)據(jù)處理

33、的實際應(yīng)用中,經(jīng)常需要同時對多個表的數(shù)據(jù)進展操作。為理解決這個問題,Visual FoxPro提供了多工作區(qū)的工作形式。2021/5/18792.6.1 工作區(qū)1.工作區(qū)的定義工作區(qū)是Visual FoxPro用來存放翻開的表而在內(nèi)存中開拓的一塊存儲區(qū)域。Visual FoxPro一共提供了32767個工作區(qū),而每個工作區(qū)只能翻開一個表,那么Visual FoxPro最多同時可以翻開32767個表來進展多表操作。但一次只能對一個工作區(qū)進展操作,那么當(dāng)前正在操作的工作區(qū)稱為當(dāng)前工作區(qū),當(dāng)前工作區(qū)中的表稱為當(dāng)前表。系統(tǒng)默認1號工作區(qū)為當(dāng)前工作區(qū)。2021/5/18802.選擇當(dāng)前工作區(qū)【格式】SELECT |【功能】選擇指定的工作區(qū)為當(dāng)前工作區(qū)?!纠?.47】依次在1、2、3號工作區(qū)翻開學(xué)生表、老師表和入學(xué)成績表,并指定老師表為當(dāng)前表,顯示其記錄信息。SELECT 1 USE 學(xué)生SELECT 2USE 老師 ALIAS JSSELECT C USE 入學(xué)成績SELECT JS2021/5/18813.工作區(qū)的互訪【格式1】別名.字段名【格式2】別名-字段名【例2.48】依次在1、2號工作區(qū)翻開學(xué)生表和入學(xué)成績表,并指定1號工作區(qū)為當(dāng)前工作區(qū),且顯示學(xué)生表所有記錄的學(xué)號、姓名、專業(yè)字段和入學(xué)成績表的語文、數(shù)學(xué)字段。SELECT AUSE 學(xué)生SEL

溫馨提示

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

評論

0/150

提交評論