VFP表的基本操作方法2課件_第1頁
VFP表的基本操作方法2課件_第2頁
VFP表的基本操作方法2課件_第3頁
VFP表的基本操作方法2課件_第4頁
VFP表的基本操作方法2課件_第5頁
已閱讀5頁,還剩68頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、VFP表的基本操作方法2第第2章續(xù)章續(xù) 索引與查詢索引與查詢VFP表的基本操作方法2n索引文件有二種,索引文件有二種,單索引文件單索引文件和和復合索引文復合索引文件。件。VFP提供了四種類型索引文件:提供了四種類型索引文件:主索引主索引、候選索引候選索引、唯一索引唯一索引和和普通索引普通索引 。 建立方式:建立方式:1、使用表設(shè)計器、使用表設(shè)計器 2、命令、命令命令格式:命令格式: INDEX ON TAG FOR ASCENDING DESCENDINGCANDIDATEn功能:功能:對當前表中滿足條件的記錄,建立索對當前表中滿足條件的記錄,建立索引文件和增加索引標識引文件和增加索引標識索引

2、索引VFP表的基本操作方法2l確定主控確定主控 索引索引格式:set order to | | TAG l表示已打開索引的序號。表示已打開索引的序號。l 指定該單索引文件為主控索引指定該單索引文件為主控索引l指定索引表示為主控索引指定索引表示為主控索引l set order to 或set order to 命令取消主控索引文件及主控索引,表達式按物理順序輸出。索引的使用索引的使用VFP表的基本操作方法2索引的更新索引的更新l1、自動更新l2、重新索引l格式:格式:REINDEX功能:重建當前打開的所有索引文件。索引的刪除: DELETE TAG ALL VFP表的基本操作方法2查詢命令查詢命

3、令直接查詢也叫順序查詢,是按照記錄的物直接查詢也叫順序查詢,是按照記錄的物理順序逐個比較,逐個查詢。理順序逐個比較,逐個查詢。格式:格式:LOCATE FOR WHILE 功能:功能:按順序搜索表,從而找到滿足指定邏輯表達式的第一按順序搜索表,從而找到滿足指定邏輯表達式的第一個記錄。個記錄。格式:格式:CONTINUE 功能:功能:它使它使LOCATE命令從當前記錄開始繼續(xù)查找下一條滿命令從當前記錄開始繼續(xù)查找下一條滿足條件的記錄。足條件的記錄。VFP表的基本操作方法2LOCATE命令命令說明:說明:(1)被搜索的表不必有索引。被搜索的表不必有索引。(2)若若LOCATE發(fā)現(xiàn)一個滿發(fā)現(xiàn)一個滿足

4、條件的記錄,就將記錄指針定位在該記錄上??梢宰銞l件的記錄,就將記錄指針定位在該記錄上??梢允褂檬褂肦ECNO()返回該記錄的記錄號,同時返回該記錄的記錄號,同時FOUND()函函數(shù)返回數(shù)返回“真真”,EOF()函數(shù)返回函數(shù)返回“假假”。如果沒有找。如果沒有找到,則將記錄指針指向范圍的最后一個記錄,同時將到,則將記錄指針指向范圍的最后一個記錄,同時將FOUND()函數(shù)值置為函數(shù)值置為“假假”,屏幕上顯示,屏幕上顯示“已到定位已到定位范圍末尾范圍末尾”。(3)如果執(zhí)行如果執(zhí)行SET EXCAT OFF命令后,命令后,再用再用LOCATE命令查找字符型數(shù)據(jù)時,不要求字符型命令查找字符型數(shù)據(jù)時,不要求

5、字符型數(shù)據(jù)精確匹配。數(shù)據(jù)精確匹配。 (4)該命令只能查找第一條滿足條件的該命令只能查找第一條滿足條件的記錄。記錄。 (5)若表中有多條滿足條件的記錄,當已經(jīng)找到若表中有多條滿足條件的記錄,當已經(jīng)找到一條滿足條件的記錄后,還想繼續(xù)查找后面滿足條件一條滿足條件的記錄后,還想繼續(xù)查找后面滿足條件的記錄時,可以使用的記錄時,可以使用 CONTINUE 命令繼續(xù)向后查找命令繼續(xù)向后查找滿足條件的記錄滿足條件的記錄VFP表的基本操作方法2索引查詢命令索引查詢命令格式:格式:FIND / 格式:格式: SEEK 功能:功能:在打開的索引文件中快速查找與在打開的索引文件中快速查找與相匹配的第相匹配的第1 條記

6、錄。條記錄。VFP表的基本操作方法2數(shù)據(jù)工作期數(shù)據(jù)工作期l工作區(qū)1)工作區(qū)號:1-327672)別名:除了使用1-10編號外,還可以依次用A-J字母來表示,稱為別名。3)選擇工作區(qū):格式:select | 功能:選定某個工作區(qū),用于打開一個表VFP表的基本操作方法2一、視圖文件的建立一、視圖文件的建立1.菜單操作菜單操作2.命令操作命令操作命令格式:命令格式:Create view 視圖文件名視圖文件名二、視圖文件的打開二、視圖文件的打開視圖文件VFP表的基本操作方法2多表操作概述概述 迄今所講述的對表的操作都是在一個工作區(qū)進行的,每個工作區(qū)最多只能打開一個表文件,用USE命令打開一個新表,同

7、時也就關(guān)閉了前面已打開的表。在實際應(yīng)用中,常常需要同時打開多個表文件,以便對多個表文件的數(shù)據(jù)進行操作。為了解決這一問題,Visual FoxPro引入了工作區(qū)和關(guān)聯(lián)的概念。VFP表的基本操作方法2一、工作區(qū)一、工作區(qū)1、工作區(qū)是一個編號區(qū)域,它標示一個 已打開的表。 表打開后才能進行操作,實際上打開表就是把它從磁盤調(diào)入內(nèi)存的某一個工作區(qū)。 VFP6提供了多達32767個工作區(qū),每個工作區(qū)都有一個工作區(qū)號,分別用 132767表示,其工作區(qū)110還分別對應(yīng)有別名AJ。 VFP表的基本操作方法2說明說明: (1) 在任意時刻,只有一個工作區(qū)是當前工作區(qū),用 戶只能在當前工作區(qū)對打開的當前表進行操作

8、。 (2) 每一個工作區(qū)都可以并且只能打開一個表文件。 (3) 同一個表文件不允許同時在多個工作區(qū)打開,但在其它工作區(qū)中被關(guān)閉之后,可以在任意一個工作區(qū)中被打開。(工作區(qū)就象教室一樣,表就班級) (4)各工作區(qū)中打開的表彼此相互獨立(指針不受響)。2、選擇工作區(qū) 命令格式:命令格式:SELECT 工作區(qū)號/別名 功能:功能:選定某個工作區(qū),用于打開一個表。VFP表的基本操作方法2例:在1號和2號工作區(qū)內(nèi)分別打開SB.DBF和SP.DBF表文件。 SELECT 1 &也可以用也可以用 SELECT A USE SB LIST SELECT B &也可以用也可以用 SELECT 2

9、 USE SP LIST 說明:(1)用)用SELECT命令選定的工作區(qū)稱為命令選定的工作區(qū)稱為當前工作區(qū)當前工作區(qū), VFP默認默認1號工作區(qū)為當前工作區(qū)。號工作區(qū)為當前工作區(qū)。 (2)函數(shù))函數(shù)SELECT()()能夠返回當前工作區(qū)的區(qū)號。能夠返回當前工作區(qū)的區(qū)號。 (3)命令)命令“SELECT 0”表示選定當前尚未使用的最表示選定當前尚未使用的最 小號工作區(qū)。小號工作區(qū)。 (4)引用非當前工作區(qū)表的字段必須冠以別名,)引用非當前工作區(qū)表的字段必須冠以別名, 格式為格式為:別名別名.字段字段。VFP表的基本操作方法2例: CLOSE ALL &關(guān)閉所有打開的表 ?SELECT()

10、&顯示:1 ,1號工作區(qū)為默認工作區(qū) USE SB list use SP list ? SELECT() &顯示:1,自動關(guān)閉SB表 SELECT 0 ? SELECT() &顯示:2,尚未使用的最小工作區(qū) 號是2 VFP表的基本操作方法2 通過用工作區(qū)(或者表)別名指定欲訪問的工作區(qū),所得到的字段值為指定工作區(qū)打開的表當前記錄的字段值。【例】在1號和2號工作區(qū)打開SB.DBF和BMDM.DBF,在1號工作區(qū)內(nèi)查看當前記錄的編號、名稱、部門名稱等字段內(nèi)容。SELECT AUSE SB & 在一號工作區(qū)中打開SB表(21)SELECT BUSE BMDM &am

11、p; 在二號工作區(qū)中打開BMDMGO 3 & 部門代碼為21SELECT A & 選擇1號工作區(qū)為當前工作區(qū)DISPLAY 編號,名稱,BMDM.名稱VFP表的基本操作方法2二、關(guān)聯(lián)二、關(guān)聯(lián)1、關(guān)聯(lián)的概述、關(guān)聯(lián)的概述 所謂表文件的關(guān)聯(lián)是把當前工作區(qū)中打開的表與另一個工作區(qū)中打開的表進行邏輯連接,而不生成新的表。當前工作區(qū)的表和另一工作區(qū)中的打開表建立關(guān)聯(lián)后,當前工作區(qū)中的表的記錄指針移動時,被關(guān)聯(lián)工作區(qū)的表記錄指針也將自動相應(yīng)移動,以實現(xiàn)對多個表的同時操作。 在多個表中,必須有一個表為關(guān)聯(lián)表,此表常稱為父表,而其他的表則稱為被關(guān)聯(lián)表,常稱為子表。在兩個表之間建立關(guān)聯(lián),必須以某一

12、個字段為標準,該字段稱為關(guān)鍵字段。表文件的關(guān)聯(lián)可分為一對一關(guān)聯(lián)、一對多關(guān)聯(lián)和多對一關(guān)聯(lián)。VFP表的基本操作方法2學號姓名班級年齡035821李三03物管 20025960張四02電商 21045524王五04統(tǒng)計 18學號CET4成績035821660259608004552458一對一關(guān)聯(lián)一對一關(guān)聯(lián)學生基本情況表 父表 學生成績表 子表VFP表的基本操作方法2編號名稱部門016-1 車床21016-2 車床21037-2 磨床22038-1 鉆床23代碼名稱21一車間22二車間23三車間多對一和一對多關(guān)聯(lián)多對一和一對多關(guān)聯(lián)多對一關(guān)聯(lián)多對一關(guān)聯(lián)父表父表子表子表子表子表父表父表一對多關(guān)聯(lián)一對多關(guān)

13、聯(lián)VFP表的基本操作方法2【說明】建立關(guān)聯(lián)時,關(guān)鍵字必須是兩個表文件共有字段,且子表已按關(guān)鍵字段建立了索引文件,并已指定關(guān)鍵字段為主控索引。2、建立關(guān)聯(lián)、建立關(guān)聯(lián)步驟 :(1)打開數(shù)據(jù)工作期窗口(2)打開需要建立關(guān)聯(lián)的表(3)為子表按關(guān)聯(lián)的關(guān)鍵字建立索引或確定主控索引(4)選定父表為當前工作區(qū),為一個或多個子表建立關(guān)聯(lián)(5)說明建立的為一多關(guān)系,缺省時默認為多一關(guān)系 下面以教材84頁的例題為例,來建立關(guān)聯(lián):VFP表的基本操作方法2一、關(guān)聯(lián)的概念一、關(guān)聯(lián)的概念 每個打開的表都有一個記錄指針,用以指示當前記錄。關(guān)聯(lián)就是令不同工作區(qū)的記錄指針建立一種臨時的聯(lián)動關(guān)系,使一個表的記錄指針移動是另一個表的

14、記錄指針能隨之移動。1.關(guān)聯(lián)條件 建立關(guān)聯(lián)的兩個表,總有一個是父表,一個為子表。父表記錄指針的移動,會使子表記錄指針自動移到滿足關(guān)聯(lián)條件的記錄上。表的關(guān)聯(lián)VFP表的基本操作方法2關(guān)聯(lián)條件通常要求比較不同表的兩個字段表達式值是否相等。要在關(guān)聯(lián)命令中指明這兩個字段表達式外,還必須先為子表的字段表達式建立索引。2.多一關(guān)系3.一多關(guān)系二、在數(shù)據(jù)工作期窗口建立關(guān)聯(lián)二、在數(shù)據(jù)工作期窗口建立關(guān)聯(lián)VFP表的基本操作方法2查詢命令查詢命令統(tǒng)計命令統(tǒng)計命令-計數(shù)命令計數(shù)命令格式:格式:COUNT FOR WHILE TO 功能:功能:統(tǒng)計當前表中指定范圍內(nèi)滿足條件的記錄個數(shù),并存于中。參數(shù)描述:參數(shù)描述:、子句

15、的用法和前面所有命令的用法是一樣的。若使用、子句,可統(tǒng)計出指定內(nèi)滿足的記錄個數(shù),否則統(tǒng)計表中的記錄的總數(shù)。對COUNT命令,默認的范圍是ALL。VFP表的基本操作方法2四、統(tǒng)計命令四、統(tǒng)計命令1 、統(tǒng)計記錄數(shù)統(tǒng)計記錄數(shù)【命令】 COUNT FOR WHILE TO 【功能】統(tǒng)計當前表中指定范圍內(nèi)滿足條件的記錄個數(shù)?!菊f明】除非指定了或 FOR/WHILE ,否則將計算 所有記錄個數(shù),如選擇了 TO ,則可將計算結(jié)果保存在內(nèi)存變量中,否則統(tǒng)計結(jié)果只在屏幕上顯示。【例4-1】統(tǒng)計學生表中男同學記錄個數(shù)和表記錄總數(shù)。 USE STUDENT COUNT FOR 性別性別=男男 TO A COUNT

16、TO BVFP表的基本操作方法22 、求和求和【命令】SUM FOR WHILE TO 【功能】對指定范圍內(nèi)、滿足條件的記錄按指定的各個表 達式分別求和?!菊f明】(1)缺省范圍、條件表示全部記錄。 (2)缺省數(shù)值型表達式表,表示對表中所有數(shù) 值型字段求和。 (3)數(shù)值型表達式表中表達式的個數(shù)應(yīng)與內(nèi)存 變量的個數(shù)一致。VFP表的基本操作方法2【例4-2】試求學生表中各同學的語文總成績,然后對所有 數(shù)值型字段進行求和。 USE STUDENT SUM 語文語文 TO YUWEN sum TO YW,SX,YY,ZF3、求平均值、求平均值【命令】AVERAGEFOR WHILE TO 【功能】對當前

17、表文件中指定范圍內(nèi)滿足條件的記錄, 按指定的數(shù)值型字段計算平均值?!菊f明】(1)缺省范圍、條件表示全部記錄。 (2)缺省數(shù)值型表達式表,表示對當前表中所有數(shù)值 型字段求平均值;數(shù)值型表達式表中表達式的 個數(shù)應(yīng)與內(nèi)存變量的個數(shù)一致。VFP表的基本操作方法2【例4-3】試求學生表中同學們的語文平均成績。 USE STUDENT Average 語文語文 TO YW_a4、綜合計算、綜合計算【命令】CALCULATEFOR WHILE TO 【功能】對當前表文件中指定范圍內(nèi)滿足條件的記錄進行 指定的計算工作?!菊f明】 可以是書上92頁表3、3中函數(shù)的 任意組合。【例4-4】試求學生表中同學們語文成績

18、的最大值。 USE STUDENT CALCULATE max(語文語文) TO max_ywVFP表的基本操作方法25、分類匯總、分類匯總【命令】 TOTAL TO ON FIELDS FOR 【功能】按關(guān)鍵字段對當前表文件的數(shù)值型字段數(shù)值型字段進行分類 匯總,形成一個新的表文件?!菊f明】(1)當前表必須在關(guān)鍵字上排序或索引,即當前表當前表 必須是有序的必須是有序的,否則不能匯總。 (2) 匯總命令執(zhí)行后,將生成一個新的表文件。 (3) 缺省,則將所有數(shù)值型字段的值 進行匯總。 (4) 對非數(shù)值型字段,則把關(guān)鍵字相同的連續(xù)記 錄的第一條記錄的字段內(nèi)容送入新表。 VFP表的基本操作方法2【例3

19、-5】對對student表按表按“性別性別”對對“總分總分” 分類匯總。分類匯總。 USE STUDENT INDEX ON 性別性別 TAG XB TOTAL ON 性別性別 FIELDS 總分總分 TO xbf USE xbf list 性別性別,總分總分VFP表的基本操作方法2五、五、SELECT-SQL查詢查詢SQL 是結(jié)構(gòu)化查詢語言是結(jié)構(gòu)化查詢語言 Structured Query Language的縮寫??傻目s寫??梢哉f查詢是以說查詢是SQL語言的重要組成部分,但語言的重要組成部分,但不是全部,不是全部,SQL還包含數(shù)據(jù)定義、數(shù)據(jù)操還包含數(shù)據(jù)定義、數(shù)據(jù)操縱和數(shù)據(jù)控制功能等部分??v和

20、數(shù)據(jù)控制功能等部分。VFP表的基本操作方法2格式格式:SELECT ALL / DISTINCT FROM WHERE 說明:說明: ALL :表示選出的記錄中包含重復記錄表示選出的記錄中包含重復記錄DISTINCT:表示選出的記錄中不包含重復記錄:表示選出的記錄中不包含重復記錄 :可以是字段名表,也可以包含函數(shù)??梢允亲侄蚊?,也可以包含函數(shù)。FROM :用于指定查詢的表:用于指定查詢的表 WHERE :指定篩選條件:指定篩選條件SQL查詢查詢VFP表的基本操作方法2查詢命令查詢命令SQL舉例舉例2)SELECT *; FROM student3)SELECT 學號學號,姓名姓名,英語英語+

21、5 AS 提分后的英語;提分后的英語; FROM student; WHERE 英語英語=100 1) SELECT 學號,姓名;學號,姓名; FROM student; WHERE 總分總分=360VFP表的基本操作方法2數(shù)據(jù)庫 數(shù)據(jù)庫是表的集合。從Visual FoxPro 3.0開始引入了真正意義上的數(shù)據(jù)庫概念,把一個二維表定義為表,把若干個關(guān)系比較固定的表集中起來放在一個數(shù)據(jù)庫中管理,在表間建立關(guān)系,設(shè)置屬性和數(shù)據(jù)有效性規(guī)則使相關(guān)聯(lián)的表協(xié)同工作。數(shù)據(jù)庫文件具有.dbc擴展名,其中可以包含一個或多個表、關(guān)系、視圖和存儲過程等。 一個Visual FoxPro表或.dbf文件,能夠存在以下

22、兩種狀態(tài)之一:與數(shù)據(jù)庫相關(guān)聯(lián)的數(shù)據(jù)庫表(就象團員就象團員),與數(shù)據(jù)庫不關(guān)聯(lián)的自由表。二者的絕大多數(shù)操作相同且可以相互轉(zhuǎn)換。相比之下,數(shù)據(jù)庫表的優(yōu)點要多一些。當一個表是數(shù)據(jù)庫的一部分時,它就可以具有以下內(nèi)容: 長表名和表中的長字段名 表中字段的標題和注釋 默認值、輸入掩碼和表中字段格式化 表字段的默認控件類 字段級規(guī)則和記錄級規(guī)則 支持參照完整性的主關(guān)鍵字索引和表間關(guān)系 INSERT、UPDATE或DELETE事件的觸發(fā)器VFP表的基本操作方法21 建立數(shù)據(jù)庫 a 菜單方式菜單方式 用菜單方式建立數(shù)據(jù)庫的具體步驟如下:(1)選擇【文件】 【新建】出現(xiàn)新建對話框。(2)選擇“數(shù)據(jù)庫”單選按鈕,再單

23、擊“新建文件”按鈕,出現(xiàn)“創(chuàng)建”對話框。(3)在“創(chuàng)建”對話框中輸入文件名。選擇“保存”按鈕,系統(tǒng)自動打開數(shù)據(jù)庫文件,并且將數(shù)據(jù)庫設(shè)計器也自動打開。n注:一個表在同一時間只能屬于一個數(shù)據(jù)庫。VFP表的基本操作方法2b 利用項目管理器建立數(shù)據(jù)庫利用項目管理器建立數(shù)據(jù)庫 打開已建立的項目文件,出現(xiàn)項目管理器窗口項目管理器窗口,選擇“數(shù)據(jù)”標簽的“數(shù)據(jù)庫”,然后單擊“新建”按鈕。出現(xiàn)新建數(shù)據(jù)庫對話框,單擊“新建數(shù)據(jù)庫”按鈕,出現(xiàn)“新建”對話框,選擇數(shù)據(jù)庫的路徑并輸入數(shù)據(jù)庫名后單擊“保存”按鈕,完成數(shù)據(jù)庫的建立,并打開該數(shù)據(jù)庫設(shè)計器VFP表的基本操作方法22 打開數(shù)據(jù)庫a 菜單方式菜單方式(1)選擇【

24、文件】|【打開】,出現(xiàn)打開對話框。(2)選擇數(shù)據(jù)庫文件所在的文件夾,將文件類型選擇為“數(shù)據(jù)庫(.dbc)”。(3)選擇所要打開的數(shù)據(jù)庫文件名,單擊“確定”按鈕。b 利用項目管理器打開數(shù)據(jù)庫利用項目管理器打開數(shù)據(jù)庫打開已建立的項目文件,出現(xiàn)項目管理器窗口,選擇“數(shù)據(jù)”標簽,選擇要打開的數(shù)據(jù)庫名,然后單擊“打開”按鈕。VFP表的基本操作方法23 關(guān)閉數(shù)據(jù)庫 利用項目管理器利用項目管理器 打開已建立的項目文件,出現(xiàn)項目管理器窗口,選擇“數(shù)據(jù)”標簽,選擇“數(shù)據(jù)庫”下面需要關(guān)閉的數(shù)據(jù)庫名,然后單擊“關(guān)閉”按鈕。在常用工具欄上的當前數(shù)據(jù)庫下拉列表框中該數(shù)據(jù)庫名消失,同時在項目管理器中“關(guān)閉”按鈕變成“打開

25、”按鈕。4 刪除數(shù)據(jù)庫 打開已建立的項目文件,出現(xiàn)項目管理器窗口,單擊“數(shù)據(jù)”標簽,選擇要刪除的“數(shù)據(jù)庫”(不能處于打開狀態(tài)),然后單擊“移去”按鈕。出現(xiàn)圖3-4選擇對話框,若選擇“移去”僅將數(shù)據(jù)庫從項目中移去,若選擇“刪除”將從磁盤上刪除數(shù)據(jù)庫。被刪除的數(shù)據(jù)庫中的表成為自由表。VFP表的基本操作方法2VFP表的基本操作方法26.1.1 查詢的設(shè)計過程查詢的設(shè)計過程在創(chuàng)建查詢時,通??梢宰裱韵铝鶄€步驟來創(chuàng)建查詢。(1)用“查詢向?qū)А被颉安樵冊O(shè)計器”創(chuàng)建查詢。(2)選擇在查詢結(jié)果中需要的字段。(3)設(shè)置查詢記錄的條件。(4)設(shè)置排序及分組條件來組織查詢結(jié)果。(5)選擇查詢輸出類別,可以是報表、

26、表文件、圖表、瀏覽窗口和表文件等等。(6)運行此查詢。6.1 數(shù)據(jù)查詢數(shù)據(jù)查詢VFP表的基本操作方法21利用利用“查詢向?qū)Р樵兿驅(qū)А眲?chuàng)建查詢創(chuàng)建查詢利用“查詢向?qū)А眲?chuàng)建查詢的步驟如下:(1)進入“查詢向?qū)А边M入“查詢向?qū)А笨捎孟旅?種方法: 選擇【工具】|【向?qū)А縷【查詢】命令。 選擇【文件】|【新建】命令,進入“新建”對話框,選擇“查詢”單選按鈕,單擊“向?qū)А卑粹o。 在“項目管理器”窗口中,選擇“數(shù)據(jù)”選項卡,選中“查詢”,單擊“新建”按鈕,出現(xiàn)“新建查詢”對話框,單擊“查詢向?qū)А卑粹o。(2)選擇查詢結(jié)果中需要的字段6.1.2 查詢的創(chuàng)建查詢的創(chuàng)建VFP表的基本操作方法2(3)設(shè)置查詢條件(

27、4)設(shè)置排序字段(5)設(shè)置記錄輸出范圍(6)保存查詢VFP表的基本操作方法22查詢設(shè)計器查詢設(shè)計器 進入“查詢設(shè)計器”窗口有二種方法,(1)選擇【文件】【新建】命令,進入“新建”對話框,選擇“查詢”單選按鈕,單擊“新建”按鈕;(2)在“項目管理器”窗口中,選擇“數(shù)據(jù)”選項卡,選中“查詢”文件類型,單擊“新建”按鈕,出現(xiàn)“新建查詢”對話框,單擊“新建查詢”按鈕。VFP表的基本操作方法2 3查詢設(shè)計器工具欄查詢設(shè)計器工具欄 “查詢設(shè)計器工具欄”各按鈕的功能如下: 按鈕:添加數(shù)據(jù)庫表。 按鈕:移去數(shù)據(jù)庫表。 按鈕:添加數(shù)據(jù)庫表間的聯(lián)接。 按鈕:顯示SQL窗口。 按鈕:最大化上部分窗口。 按鈕:確定查

28、詢?nèi)ハ?。VFP表的基本操作方法24使用查詢設(shè)計器創(chuàng)建查詢使用查詢設(shè)計器創(chuàng)建查詢使用“查詢設(shè)計器”創(chuàng)建前面“查詢向?qū)А眲?chuàng)建查詢例子,具體步驟如下:(1)進入“查詢設(shè)計器”窗口,添加stud表 ,如圖所示。VFP表的基本操作方法2(2)選擇查詢需要的字段(3)設(shè)置查詢條件(4)保存查詢VFP表的基本操作方法21查詢的運行查詢的運行運行查詢的方法有以下5種: 在“查詢設(shè)計器”窗口中,選擇【查詢】|【運行查詢】命令。 在“查詢設(shè)計器”窗口中,右擊“查詢設(shè)計器”窗口,選擇快捷菜單中的【運行查詢】命令。 選擇【程序】|【運行】命令。彈出“運行”對話框,在對話框中,選擇所要運行的查詢文件,單擊“運行”按鈕。

29、 在“項目管理器”窗口中,選擇要運行的查詢文件,單擊右邊的“運行”按鈕。 在“命令”窗口中,鍵入 DO 。例如,DO 查詢1.qpr。6.1.3 查詢的運行與修改查詢的運行與修改VFP表的基本操作方法22查詢的修改查詢的修改修改可以用以下3種方法: 在“項目管理器”窗口中,選擇要修改的查詢文件,單擊右邊的“修改”按鈕,進入“查詢設(shè)計器”窗口中修改。 選擇【文件】|【打開】命令,在“打開”對話框中,選擇所要修改的查詢文件,單擊“確定”按鈕,進入“查詢設(shè)計器”窗口中修改。 在命令窗口中,鍵入 MODIFY QUERY 。3查詢?nèi)ハ虻脑O(shè)置查詢?nèi)ハ虻脑O(shè)置 單擊“查詢設(shè)計器”工具欄中的“查詢?nèi)ハ颉卑粹o或

30、在系統(tǒng)菜單中單擊【查詢】|【查詢?nèi)ハ颉棵?,彈出“查詢?nèi)ハ颉睂υ捒颍鐖D3.26 所示。其中共包含7個查詢?nèi)ハ?,各項的含義見p105。VFP表的基本操作方法26.2.1 視圖簡介視圖是一個定制的虛擬邏輯表,視圖中只存放相應(yīng)的數(shù)據(jù)邏輯關(guān)系,并不保存表的記錄內(nèi)容,但可以在視圖中改變記錄的值,然后將更新記錄返回到源表。 視圖與查詢在功能上有許多相似之處,但又有各自特點,主要區(qū)別如下: 功能不同:視圖可以更新字段內(nèi)容并返回源表,而查詢文件中的記錄數(shù)據(jù)不能被修改。 從屬不同:視圖不是一個獨立的文件而從屬于某一個數(shù)據(jù)庫。查詢是一個獨立的文件,它不從屬于某一個數(shù)據(jù)庫。6.2 建立視圖建立視圖VFP表的基本操

31、作方法2 訪問范圍不同:視圖可以訪問本地數(shù)據(jù)源和遠程數(shù)據(jù)源,而查詢只能訪問本地數(shù)據(jù)源。 輸出去向不同:視圖只能輸出到表中,而查詢可以選擇多種去向,如表、圖表、報表、標簽、窗口等形式。 使用方式不同:視圖只有所屬的數(shù)據(jù)庫被打開時,才能使用。而查詢文件可在命令窗口中執(zhí)行。VFP表的基本操作方法26.2.2 本地視圖的創(chuàng)建本地視圖的創(chuàng)建1使用本地視圖向?qū)?chuàng)建本地視圖使用本地視圖向?qū)?chuàng)建本地視圖2使用視圖設(shè)計器創(chuàng)建本地視圖使用視圖設(shè)計器創(chuàng)建本地視圖n方式一:在向?qū)нx取中選擇本地視圖向?qū)?n方式二:在文件下選擇新建,選擇視圖下的向?qū)?依照本地視圖向?qū)Р僮?VFP表的基本操作方法21 1創(chuàng)建遠程數(shù)據(jù)聯(lián)接創(chuàng)

32、建遠程數(shù)據(jù)聯(lián)接遠程視圖是通過ODBC從遠程數(shù)據(jù)源建立的視圖。所謂ODBC即Open DataBase Connectivity (開放式數(shù)據(jù)互連)的英語縮寫,它是一個標準的數(shù)據(jù)庫接口,以一個動態(tài)連接庫(DLL)方式提供的。創(chuàng)建ODBC數(shù)據(jù)源可以用二種方法建立。第一種方法是利用 “連接設(shè)計器”中“新的數(shù)據(jù)源”創(chuàng)建,第二種方法是利用在windows系統(tǒng)的“控制面板”中啟動“ODBC數(shù)據(jù)源(32位)”應(yīng)用程序。 6.2.3 創(chuàng)建創(chuàng)建遠程視圖遠程視圖VFP表的基本操作方法21 1更新數(shù)據(jù)更新數(shù)據(jù)在在“視圖設(shè)計器視圖設(shè)計器”中,中,“更新條件更新條件”選項卡控制對數(shù)據(jù)源選項卡控制對數(shù)據(jù)源的修改(如更改、

33、刪除、插入)應(yīng)發(fā)送回數(shù)據(jù)源的方式,的修改(如更改、刪除、插入)應(yīng)發(fā)送回數(shù)據(jù)源的方式,而且還可以控制對表中的特定字段定義是否為可修改字段,而且還可以控制對表中的特定字段定義是否為可修改字段,并能對用戶的服務(wù)器設(shè)置合適的并能對用戶的服務(wù)器設(shè)置合適的SQLSQL更新方法。更新方法。2 2修改視圖修改視圖在在“項目管理器項目管理器”中,選擇中,選擇“數(shù)據(jù)數(shù)據(jù)”選項卡,選定要修改選項卡,選定要修改的的“本地視圖本地視圖”或或“遠程視圖遠程視圖”,單擊右邊的,單擊右邊的“修改修改”按按鈕,進入鈕,進入“視圖設(shè)計器視圖設(shè)計器”進行修改。進行修改。6.2.4 使用視圖的有關(guān)操作使用視圖的有關(guān)操作VFP表的基本

34、操作方法23刪除視圖刪除視圖 在在“項目管理器項目管理器”中,選擇中,選擇“數(shù)據(jù)數(shù)據(jù)”選項卡,選定要修改選項卡,選定要修改的的“本地視圖本地視圖”或或“遠程視圖遠程視圖”,單擊右邊的,單擊右邊的“移去移去”按鈕,按鈕,單擊提示框中單擊提示框中“移去移去”按鈕即可刪除。按鈕即可刪除。4瀏覽或運行視圖瀏覽或運行視圖 5顯示顯示SQL語句語句在在“視圖設(shè)計器視圖設(shè)計器”窗口??捎孟旅嫒N方法之一察看窗口??捎孟旅嫒N方法之一察看SQL語語句:句: 單擊單擊“視圖設(shè)計器視圖設(shè)計器”工具欄中工具欄中“SQL”按鈕。按鈕。 右擊右擊“視圖設(shè)計器視圖設(shè)計器”窗口,選擇窗口,選擇 “察看察看 SQL”命令。命

35、令。 在系統(tǒng)菜單中選擇在系統(tǒng)菜單中選擇【查詢】【查詢】|【查看【查看SQL】VFP表的基本操作方法2查詢命令查詢命令統(tǒng)計命令統(tǒng)計命令-求和命令求和命令格式:格式:SUM FOR WHILE TO /TO ARRAY 功能:功能:對當前表中指定范圍內(nèi)滿足條件的數(shù)值型字段或是由字段組成的數(shù)值型表達式累加求和,并把結(jié)果存放在對應(yīng)的標識的變量中。若使用任選項,則只對中的各表達式累加求和,否則將對當前表中的所有數(shù)值型字段累加求和,數(shù)值型字段之間或表達式之間用逗號分隔開。若使用 TO ,可將求出的各表達式的值依次賦給各內(nèi)存變量,但要注意:表達式表中的表達式的個數(shù)應(yīng)該與內(nèi)存變量表中的變量個數(shù)相等,若省略,內(nèi)

36、存變量的個數(shù)應(yīng)該與數(shù)值型字段的個數(shù)相等。也可將求出的各表達式的值存放于指定的數(shù)組中,一個數(shù)組元素等同于一個內(nèi)存變量。 VFP表的基本操作方法2統(tǒng)計命令統(tǒng)計命令-求平均值命令求平均值命令格式:格式:AVERAGE FOR WHILE TO | TO ARRAY 功能:功能:對當前表中指定范圍內(nèi)滿足條件的記錄的數(shù)值型字段求算術(shù)平均值,并把結(jié)果存入中或存入指定的數(shù)組中。 說明:說明:AVERAGE和SUM命令的不同之處僅僅在于前者是求數(shù)值型字段或數(shù)值型表達式的平均值,而后者是求和。 若省略,約定為ALL,若省略,約定為當前表中的所有的數(shù)值型和浮點型字段。若省略和,則不保留結(jié)果,若系統(tǒng)設(shè)置為SET T

37、ALK ON則只顯示,否則不顯示。VFP表的基本操作方法2統(tǒng)計命令統(tǒng)計命令-計算命令計算命令格式:格式:CALCULATE FOR WHILE TO | TO ARRAY 功能:功能:在打開的表中,分別計算在打開的表中,分別計算的表達式的表達式。 說明:說明:表達式中必須包含系統(tǒng)規(guī)定的表達式中必須包含系統(tǒng)規(guī)定的8個函數(shù)之一,其中常用個函數(shù)之一,其中常用的函數(shù)由的函數(shù)由AVG(), CNT(), MAX(), MIN() SUM ()等5個。 VFP表的基本操作方法2查詢命令查詢命令統(tǒng)計命令統(tǒng)計命令-匯總命令匯總命令格式:格式:TOTAL TO ON FIELDS | FOR WHILE 功能:

38、功能:在當前打開的表中,分別對在當前打開的表中,分別對值相同的記錄的值相同的記錄的數(shù)值型字段求和,并將結(jié)果存入一個新表數(shù)值型字段求和,并將結(jié)果存入一個新表。 說明:說明:。 指排序字段或索引關(guān)鍵字,及即當前表是有序的。指排序字段或索引關(guān)鍵字,及即當前表是有序的。 FIELDS 子句的子句的指出要匯總的字段。指出要匯總的字段。 :缺省是:缺省是 表示對所有的記錄。表示對所有的記錄。VFP表的基本操作方法2查詢命令查詢命令SELECT-SQL查詢查詢 SQL 是結(jié)構(gòu)化查詢語言是結(jié)構(gòu)化查詢語言Structured Query Language的縮寫??梢哉f查詢是的縮寫??梢哉f查詢是SQL語言語言的重

39、要組成部分,但不是全部,的重要組成部分,但不是全部,SQL還包含還包含數(shù)據(jù)定義、數(shù)據(jù)操縱和數(shù)據(jù)控制功能等部分。數(shù)據(jù)定義、數(shù)據(jù)操縱和數(shù)據(jù)控制功能等部分。VFP表的基本操作方法2查詢命令查詢命令SQL 簡單查詢簡單查詢 首先從幾個最簡單的查詢開始,這首先從幾個最簡單的查詢開始,這些查詢基于單個表,可以有簡單的查詢些查詢基于單個表,可以有簡單的查詢條件。這樣的查詢由條件。這樣的查詢由SELECT和和FROM短語構(gòu)成無條件查詢,或由短語構(gòu)成無條件查詢,或由SELECT、FROM和和WHERE短語構(gòu)成條件查詢。短語構(gòu)成條件查詢。VFP表的基本操作方法2查詢命令查詢命令SQL格式:格式:SELECT AL

40、L / DISTINCTFROM ! WHERE 說明:說明: ALL :表示選出的記錄中包含重復記錄表示選出的記錄中包含重復記錄 DISTINCT:表示選出的記錄中不包含重復記錄:表示選出的記錄中不包含重復記錄 FROM !:用于指定查詢的表:用于指定查詢的表 WHERE :指定篩選條件:指定篩選條件VFP表的基本操作方法2查詢命令查詢命令Sql其它語句其它語句lGroup by用于對查詢結(jié)果進行分組用于對查詢結(jié)果進行分組lHaving短語必須根據(jù)短語必須根據(jù)group by使用使用 ,它用,它用來限定分組必須滿足的條件來限定分組必須滿足的條件 lOrder by短語用來對查詢的結(jié)果進行排序

41、短語用來對查詢的結(jié)果進行排序VFP表的基本操作方法2單表查詢1.選擇表中的若干列1)查詢指定列2)查詢?nèi)苛?)查詢經(jīng)過計算的值4)目標列為字符串常量、函數(shù)5)使用別名例:表student(sno,sname,ssex,sage,sdept)1)select sno,sname from studentVFP表的基本操作方法22)select * from student3)select sname,2003-sage from student4)select sname,出生年份:, 2003-sage,islower(sdept)5)select sname 姓名,sage as 年齡 f

42、rom student VFP表的基本操作方法26)SELECT 編號,姓名編號,姓名FROM 學生表學生表 WHERE 成績成績=60 7)SELECT *FROM 學生表學生表 8)SELECT 編號編號,姓名姓名,成績成績+5 AS 提分后的成績提分后的成績 FROM 學生表學生表 WHERE 成績成績=55 VFP表的基本操作方法22.查詢示列1)查找大修過的所有設(shè)備 select distinct 編號 from dx2)求出每一設(shè)備的增值金額 select 編號,sum(增值) from zz group by 編號 3)找出大修費用已超過5000元的設(shè)備Select 編號 from dxGroup by 編號Having sum(

溫馨提示

  • 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

提交評論