




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第五章 視圖與查詢(xún) 5.1 創(chuàng)建視圖創(chuàng)建視圖 5.2 查詢(xún)的輸出去向查詢(xún)的輸出去向 5.3 創(chuàng)建查詢(xún)創(chuàng)建查詢(xún) 5.4 利用視圖更新數(shù)據(jù)利用視圖更新數(shù)據(jù) 習(xí)題習(xí)題第五章 視圖與查詢(xún) 在設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí),各個(gè)數(shù)據(jù)表的構(gòu)造是根據(jù)整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的需求,按照規(guī)范化實(shí)際來(lái)設(shè)計(jì)的。整個(gè)數(shù)據(jù)庫(kù)由很多個(gè)表組成,里面的信息非常龐大,但在實(shí)踐的運(yùn)用過(guò)程中,不同的用戶(hù)對(duì)數(shù)據(jù)庫(kù)的認(rèn)識(shí)是不同的,每個(gè)用戶(hù)只關(guān)懷本人的運(yùn)用,也就是說(shuō),用戶(hù)在許多時(shí)候,只關(guān)懷整個(gè)數(shù)據(jù)庫(kù)中的一部分信息。那么,如何快速簡(jiǎn)便的提取出用戶(hù)需求的信息呢?視圖和查詢(xún)就是為了滿(mǎn)足這個(gè)需求而設(shè)計(jì)的。5.1 創(chuàng)建視圖 視圖,是從一個(gè)或多個(gè)數(shù)據(jù)表中選擇滿(mǎn)足特定需求的數(shù)
2、據(jù)所生成的“表。它并不是一個(gè)真正的表,由于視圖中的數(shù)據(jù)還是存儲(chǔ)在原來(lái)的數(shù)據(jù)表中,因此,我們可以把它看做是一個(gè)虛擬表。介于這個(gè)特點(diǎn),視圖是不能單獨(dú)存在的,它必需依賴(lài)于某一數(shù)據(jù)庫(kù)并依賴(lài)其中的數(shù)據(jù)表而存在,只需在翻開(kāi)與視圖相關(guān)的數(shù)據(jù)庫(kù)時(shí)才干創(chuàng)建和運(yùn)用視圖。 視圖有4個(gè)明顯的優(yōu)點(diǎn),使得視圖成為數(shù)據(jù)庫(kù)設(shè)計(jì)中不可或缺的工具: 1靈敏有效的選取數(shù)據(jù) 2不添加數(shù)據(jù)冗余 3運(yùn)用方便 4更新數(shù)據(jù) 在VFP中,按照數(shù)據(jù)的來(lái)源,視圖分為本地視圖和遠(yuǎn)程視圖兩種。 5.1.1利用視圖設(shè)計(jì)創(chuàng)建視圖 假設(shè)要運(yùn)用視圖設(shè)計(jì)器來(lái)創(chuàng)建本地表的視圖,首先應(yīng)創(chuàng)建或者翻開(kāi)一個(gè)數(shù)據(jù)庫(kù),然后在數(shù)據(jù)庫(kù)中翻開(kāi)視圖設(shè)計(jì)器,創(chuàng)建好的視圖也只能保管在該
3、數(shù)據(jù)庫(kù)中。下面用兩個(gè)例子闡明創(chuàng)建視圖的詳細(xì)步驟。 【例51】利用視圖設(shè)計(jì)器,根據(jù)“學(xué)生庫(kù)數(shù)據(jù)庫(kù),創(chuàng)建一個(gè)本地單表視圖“班級(jí)專(zhuān)業(yè)視圖,其中包含“學(xué)號(hào)、“姓名、“班級(jí)和“專(zhuān)業(yè)字段,要求按“學(xué)號(hào)字段升序陳列。 留意:由于視圖必需依賴(lài)于數(shù)據(jù)庫(kù)存在,所以在建立視圖之前,一定要先翻開(kāi)數(shù)據(jù)庫(kù)設(shè)計(jì)器,否那么是無(wú)法建立視圖的。 操作步驟如下: 1翻開(kāi)數(shù)據(jù)庫(kù)文件“學(xué)生庫(kù).dbc,進(jìn)入“數(shù)據(jù)庫(kù)設(shè)計(jì)器窗口,如圖5-1所示。圖5-1 “學(xué)生庫(kù)數(shù)據(jù)庫(kù)設(shè)計(jì)器 2 . 在系統(tǒng)菜單中選擇“文件“新建,在“新建對(duì)話(huà)框中選 擇“視圖單項(xiàng)選擇按鈕,單擊“新建文件按鈕,如圖5-2所示。圖5-2 “新建對(duì)話(huà)框 圖5-3 “添加表和視圖對(duì)
4、話(huà)框3在“添加表和視圖對(duì)話(huà)框中添加表“學(xué)生情況表,如圖5-3所示。添加完成后,點(diǎn)擊“封鎖按鈕,進(jìn)入到“視圖設(shè)計(jì)器,如圖5-4所示。 圖5-4 “視圖設(shè)計(jì)器 4在“視圖設(shè)計(jì)器的“字段選項(xiàng)卡中,從左邊“可用字段欄選取所需求的字段“學(xué)生情況表.學(xué)號(hào)、“學(xué)生情況表.姓名、“學(xué)生情況表.班級(jí)、“學(xué)生情況表.專(zhuān)業(yè),點(diǎn)擊“添加按鈕將其添加到右邊的“選定字段中,如圖5-5所示。 圖5-5 “字段選項(xiàng)卡5在“排序根據(jù)選項(xiàng)卡中設(shè)置記錄的排序根據(jù)。選擇“學(xué)號(hào)字段,設(shè)置為“升序,如圖5-6所示。 圖5-6 “排序根據(jù)選項(xiàng)卡6按要求設(shè)計(jì)好后,點(diǎn)擊“視圖設(shè)計(jì)器右上角的封鎖按鈕,保管視圖并命名為“班級(jí)專(zhuān)業(yè)視圖,如圖5-7和
5、 圖5-8所示。 圖5-7 “保管確認(rèn)對(duì)話(huà)框 圖5-8 “保管對(duì)話(huà)框 7命名完成后,回到“數(shù)據(jù)庫(kù)設(shè)計(jì)器,選中剛剛建立的視圖,如圖5-9所示。在系統(tǒng)菜單中選擇“數(shù)據(jù)庫(kù)“閱讀?;蛘唠p擊視圖的標(biāo)題欄,可以查看視圖內(nèi)的記錄,如圖5-10所示。從圖中我們可以看到,視圖“班級(jí)學(xué)生視圖中的數(shù)據(jù)是“學(xué)生情況表中的部分?jǐn)?shù)據(jù),并重新進(jìn)展了排序. 圖5-9 “學(xué)生庫(kù)數(shù)據(jù)庫(kù)設(shè)計(jì)器 圖5-10 運(yùn)轉(zhuǎn)結(jié)果【例52】利用視圖設(shè)計(jì)器,根據(jù)“學(xué)生庫(kù)數(shù)據(jù)庫(kù),創(chuàng)建一個(gè)本地多表視圖“專(zhuān)業(yè)成果視圖,其中包含“學(xué)號(hào)、“姓名、“總分和“專(zhuān)業(yè)字段,要求只顯示總分大于250的學(xué)生的記錄,結(jié)果按總分從高到低陳列。 留意:由于“學(xué)號(hào)、“姓名和“專(zhuān)
6、業(yè)是在學(xué)生情況表中,而“總分是在學(xué)生成果表中,所以我們創(chuàng)建的這個(gè)視圖需求同時(shí)用到兩張數(shù)據(jù)表,并且將兩張表的記錄,按照學(xué)號(hào)相等的關(guān)系對(duì)應(yīng)起來(lái),而挑選總分大于250的記錄,并按分?jǐn)?shù)從高到低排序,那么需求用到視圖設(shè)計(jì)器中專(zhuān)門(mén)的一些功能選項(xiàng)實(shí)現(xiàn)。 操作步驟如下:1翻開(kāi)數(shù)據(jù)庫(kù)文件“學(xué)生庫(kù).dbc,進(jìn)入“數(shù)據(jù)庫(kù)設(shè)計(jì)器窗口,選擇系統(tǒng)菜單“數(shù)據(jù)庫(kù)“新建本地視圖選項(xiàng),如圖5-11所示。然后在彈出的“新建本地視圖對(duì)話(huà)框中,選擇“新建視圖按鈕,如圖5-12所示 圖5-11 “學(xué)生庫(kù)數(shù)據(jù)庫(kù)設(shè)計(jì)器 圖5-12 “新建視圖對(duì)話(huà)框 2單擊“新建視圖按鈕后進(jìn)入“視圖設(shè)計(jì)器窗口,同時(shí)彈出“添加表或視圖窗口,如圖5-13所示。在
7、該窗口把視圖所根據(jù)的“學(xué)生成果表和“學(xué)生情況表逐 一添加到視圖設(shè)計(jì)器中。 圖5-13“添加表和視圖對(duì)話(huà)框 圖5-14 “聯(lián)接條件對(duì)話(huà)框3假設(shè)在數(shù)據(jù)庫(kù)中,添加的多個(gè)表間并未設(shè)置好關(guān)聯(lián)關(guān)系,那么會(huì)彈出“聯(lián)接條件對(duì)話(huà)框,如圖5-14所示。在“聯(lián)接條件對(duì)話(huà)框中,有如下4種聯(lián)接類(lèi)型:1內(nèi)部聯(lián)接:查詢(xún)結(jié)果包含左表與右表中與給出的聯(lián)接條件相匹配的記錄,這是系統(tǒng)默許的聯(lián)接類(lèi)型。2左聯(lián)接:查詢(xún)結(jié)果包含左表與右表中與給出的聯(lián)接條件相匹配的記錄,以及左表中其他的記錄,右表中存在而左表中不存在的字段設(shè)置為.NULL.。3右聯(lián)接:查詢(xún)結(jié)果包含左表與右表中與給出的聯(lián)接條件相匹配的記錄,以及右表中其他的記錄,左表中存在而右
8、表中不存在的字段設(shè)置為.NULL.。4完全聯(lián)接:查詢(xún)結(jié)果包含左、右兩表的全部記錄,右表中存在而左表中不存在的字段和左表中存在而右表中不字段的記錄均設(shè)置為.NULL. 添加好所需求的表并建立好關(guān)聯(lián)后,封鎖“添加表或視圖窗口,進(jìn)入“視圖設(shè) 計(jì)器,如圖5-15所示。假設(shè)在設(shè)計(jì)過(guò)程中需求修正聯(lián)接條件,可以在視圖設(shè)計(jì) 器的“聯(lián)接標(biāo)簽中設(shè)置,如圖5-16所示。 圖5-15 視圖設(shè)計(jì)器 圖5-16 “聯(lián)接選項(xiàng)卡 4在“字段標(biāo)簽中選取左邊“可用字段中所需求的字段“學(xué)生成果表.學(xué)號(hào)、“學(xué)生成果表.總分、“學(xué)生情況表.姓名和“學(xué)生情況表.專(zhuān)業(yè)添加到右邊的“選定字段中,留意不同的字段存在于不同的表中。選取時(shí)要留意表
9、名,如圖5-17所示。 圖5-17 “字段選項(xiàng)卡5在“挑選標(biāo)簽中設(shè)置對(duì)記錄過(guò)濾的條件。在這里我們?cè)O(shè)置為“學(xué)生成果表.總分=250來(lái)表示總分不低于250。假設(shè)多個(gè)挑選條件,那么依次設(shè)置即可,如圖5-18和5-19所示 圖5-18 “挑選選項(xiàng)卡 圖5-19 “挑選選項(xiàng)卡6在“排序根據(jù)標(biāo)簽中,從左邊的“選頂字段欄中選擇“總分字段作為排序條件,并在“排序選項(xiàng)欄中選擇“降序,如圖5-20所示。 7按要求設(shè)計(jì)好后,點(diǎn)擊“視圖設(shè)計(jì)器右上角的封鎖按鈕,保管視圖并命名為“專(zhuān)業(yè)成果視圖,如圖5-21所示 圖5-20 “排序根據(jù)選項(xiàng)卡 圖5-21 “保管對(duì)話(huà)框 8命名完成后,回到“數(shù)據(jù)庫(kù)設(shè)計(jì)器,選中剛剛建立的“專(zhuān)業(yè)
10、成果視圖,如圖5-22所示。選擇系統(tǒng)菜單“數(shù)據(jù)庫(kù)“閱讀?;蛘唠p擊視圖的標(biāo)題欄,可以查看視圖內(nèi)的記錄,如圖5-23所示。從結(jié)果中我們可以看到,視圖中的數(shù)據(jù)是按照學(xué)號(hào)關(guān)聯(lián)起來(lái)的“學(xué)生情況表和“學(xué)生成果表中的部分?jǐn)?shù)據(jù),并重新進(jìn)展了排序。 圖5-22 “學(xué)生庫(kù)數(shù)據(jù)庫(kù)設(shè)計(jì)器 圖5-23 運(yùn)轉(zhuǎn)結(jié)果 5.1.2 利用視圖導(dǎo)游創(chuàng)建視圖 用導(dǎo)游創(chuàng)建視圖是另一種視圖創(chuàng)建方法,并且設(shè)計(jì)出的視圖也可以在視圖設(shè) 計(jì)器中進(jìn)展修正,操作方法將舉例闡明。 【例53】利用視圖導(dǎo)游,創(chuàng)建例5.2中的視圖。 操作步驟如下: 1翻開(kāi)“學(xué)生表數(shù)據(jù)庫(kù),選擇系統(tǒng)菜單“數(shù)據(jù)庫(kù)的“新建本地視圖選項(xiàng),然后 在彈出的“新建本地視圖對(duì)話(huà)框中,選擇“
11、視圖導(dǎo)游按鈕,如圖5-24所示 圖5-24“新建視圖對(duì)話(huà)框2在出現(xiàn)的“本地視圖導(dǎo)游第一步“步驟1 - 字段選取中設(shè)置需求用到的字段,首先,在最左邊的“數(shù)據(jù)庫(kù)和表選項(xiàng)中選取“學(xué)生情況表,將其中的“學(xué)號(hào)、“姓名、“專(zhuān)業(yè)字段添加到“選定字段中,如圖5-25所示。然后選中“學(xué)生成果表,將其中的“總分字段添加到“選定字段中,如圖5-26所示。逐一添加好各表中需求的字段后,點(diǎn)擊“下一步按鈕。 圖5-25 “步驟1 - 字段選取 圖5-26 “步驟1 - 字段選取3在出現(xiàn)的“本地視圖導(dǎo)游第二步“步驟2 為表建立關(guān)系中設(shè)置表間的關(guān)聯(lián)關(guān)系。由于兩張表是用學(xué)號(hào)相等來(lái)聯(lián)接的,所以在該窗口的兩個(gè)下拉列表框中分別選取“
12、學(xué)生情況表.學(xué)號(hào)和“學(xué)生成果表.學(xué)號(hào),而后點(diǎn)擊“添加按鈕將關(guān)系添加到下方,如圖5-27和圖5-28所示。假設(shè)視圖運(yùn)用的表超越兩張,那么還要繼續(xù)添加其他的關(guān)聯(lián)關(guān)系。添加完成后點(diǎn)擊“下一步按鈕。 圖5-27 “步驟2 為表建立關(guān)系 圖5-28 “步驟2 為表建立關(guān)系4在出現(xiàn)的“步驟2a - 字段選取中設(shè)置多表關(guān)聯(lián)時(shí)記錄的選擇規(guī)那么。在這里選擇“僅包含匹配的行,表示只需當(dāng)兩張表中都有對(duì)應(yīng)的學(xué)號(hào)信息時(shí),才將記錄顯示出來(lái)。假設(shè)某學(xué)號(hào)的記錄在其中一張數(shù)據(jù)表中存在而在另一張數(shù)據(jù)表中不存在,那么該學(xué)號(hào)的一切信息不在視圖內(nèi)顯示。如圖5-29所示。選擇完成后點(diǎn)擊“下一步按鈕 圖5-29 “步驟2a - 字段選取
13、圖5-30 “步驟3 挑選記錄 5在出現(xiàn)的“步驟3 挑選記錄中設(shè)置記錄的挑選規(guī)那么。在“字段欄中選擇“學(xué)生成果表.總分、在“操作符欄中選擇“大于或等于、在“值欄中輸入“250,如圖5-30所示。設(shè)置好后點(diǎn)擊“下一步按鈕。6在出現(xiàn)的“步驟4 排序記錄中設(shè)置視圖中記錄的排序規(guī)那么。從“可用字段中選擇“學(xué)生成果表.總分為排序字段,并設(shè)置為降序。,如圖5-31所示。 圖5-31 “步驟4 排序記錄 圖5-32 “步驟4a 限制記錄 7在出現(xiàn)的“步驟4a 限制記錄中設(shè)置視圖中記錄的顯示個(gè)數(shù),在這里選擇“一切記錄后點(diǎn)擊“下一步按鈕,如圖5-32所示。8在出現(xiàn)的“步驟5 完成中設(shè)置視圖的保管。在這里選擇“保
14、管本地視圖,然后點(diǎn)擊“完成按鈕,如圖5-33所示。在彈出的“視圖名對(duì)話(huà)框中輸入“專(zhuān)業(yè)成果視圖2后確認(rèn),如圖5-34所示 圖5-33 “步驟5 完成 圖5-34 “保管對(duì)話(huà)框 9導(dǎo)游完成后,可以在“學(xué)生庫(kù)中找到該視圖并閱讀,如圖5-35和圖5-36所示 圖5-35 “學(xué)生庫(kù)數(shù)據(jù)庫(kù)設(shè)計(jì)器 圖5-36 運(yùn)轉(zhuǎn)結(jié)果5.2 利用視圖更新數(shù)據(jù) 視圖有一個(gè)很重要的特點(diǎn),就是對(duì)數(shù)據(jù)的更新功能。由于 視圖是一張“虛表,視圖中的數(shù)據(jù)都是儲(chǔ)存在原始表中, 所以我們就可以經(jīng)過(guò)對(duì)視圖內(nèi)數(shù)據(jù)的修正來(lái)完成對(duì)原始表的修正。而且,可以設(shè)置經(jīng)過(guò)對(duì)視圖的設(shè)置,讓用戶(hù)只對(duì)指定的字段有更新權(quán)限,從而維護(hù)原始數(shù)據(jù)的平安。在“視圖設(shè)計(jì)器中,
15、可以利用“更新條件選項(xiàng)卡來(lái)設(shè)置視圖中的更新規(guī)那么。 下面舉例引見(jiàn)用本地視圖更新數(shù)據(jù)表中的數(shù)據(jù)。 【例54】修正例5 .1中創(chuàng)建的“班級(jí)專(zhuān)業(yè)視圖,使得該視圖可以更新其中的“班級(jí)信息。 操作步驟如下: 1翻開(kāi)數(shù)據(jù)庫(kù)“學(xué)生庫(kù),選中例5 .1中創(chuàng)建的“班級(jí)專(zhuān)業(yè)視圖,右鍵單擊標(biāo)題欄,選擇“修正,如圖5-37所示。 圖5-37 “學(xué)生庫(kù)數(shù)據(jù)庫(kù)設(shè)計(jì)器 圖5-38 “更新條件選項(xiàng)卡2翻開(kāi)“視圖設(shè)計(jì)器后選中“更新條件標(biāo)簽,如圖5-38所示。 3在“更新條件標(biāo)簽中設(shè)置可更新字段。由于在視圖中一切的數(shù)據(jù)都是來(lái)自于原始數(shù)據(jù)表,所以在設(shè)置更新字段之前,首先要設(shè)置關(guān)鍵字字段,關(guān)鍵自字段的作用是用來(lái)使視圖中的修正與表中的原
16、始記錄相匹配。只需設(shè)置了關(guān)鍵字字段,該字段所在的原始表內(nèi)的字段才可以被設(shè)置為可更新字段。在本例中,從“字段名列表框中選擇“學(xué)號(hào),單擊其左邊“圖標(biāo)列顯示一個(gè)“,這表示將該字段作為視圖的關(guān)鍵字字段,如圖5-39所示;然后選擇“班級(jí),單擊其左邊的“圖標(biāo)列顯示一個(gè)“,這表示在視圖中該字段是可更新字段,如圖5-40所示。 圖5-39 設(shè)置關(guān)鍵字字段 圖5-40 設(shè)置可更新字段4假設(shè)想使視圖中數(shù)據(jù)的修正可以前往到源表中,還要勾選“發(fā)送SQL更新項(xiàng),如圖5-41所示。 圖5-41 “更新條件選項(xiàng)卡 圖5-42 “保管對(duì)話(huà)框 5完成后封鎖“視圖設(shè)計(jì)器,確認(rèn)保管修正,如圖5-42所示。6保管后閱讀視圖,選中其中
17、學(xué)號(hào)為“20052202的記錄,修正該記錄的“班級(jí)字段為“06本1班,并修正“專(zhuān)業(yè)字段為“計(jì)算機(jī)運(yùn)用技術(shù),然后封鎖,如圖5-42所示。 圖5-42 更新數(shù)據(jù) 圖5-43 運(yùn)轉(zhuǎn)結(jié)果7翻開(kāi)原始表“學(xué)生情況表,找到學(xué)號(hào)為“20052202的記錄,可以看到上一步在視圖中對(duì)“班級(jí)字段的更新曾經(jīng)完成,而對(duì)“專(zhuān)業(yè)字段的更新無(wú)效,如圖5-43所示。 5.3 創(chuàng)建查詢(xún) 查詢(xún)的功能和視圖類(lèi)似,也是經(jīng)過(guò)設(shè)置一些查詢(xún)條件,在一定的范圍內(nèi)查找符合條件的數(shù)據(jù),以一定的順序顯示和保管查詢(xún)結(jié)果。查詢(xún)不需求依賴(lài)數(shù)據(jù)庫(kù)存在,它是以單獨(dú)的文件方式存在的.QPR,查詢(xún)數(shù)據(jù)實(shí)踐上就是運(yùn)轉(zhuǎn)查詢(xún)文件的過(guò)程。查詢(xún)得到的結(jié)果,不僅可以用來(lái)閱讀
18、,還能以多種方式輸出。 查詢(xún)和視圖的主要區(qū)別是: 1視圖必需在數(shù)據(jù)庫(kù)中建立,分開(kāi)數(shù)據(jù)庫(kù)就失去了數(shù)據(jù)來(lái)源,脫離數(shù)據(jù)庫(kù)的視圖是沒(méi)有意義的;而查詢(xún)可以脫離數(shù)據(jù)庫(kù)以獨(dú)立的文件方式存在。 2查詢(xún)的結(jié)果可以以多種的方式輸出,而視圖只能以虛擬表的方式閱讀和運(yùn)用。 3查詢(xún)只能從數(shù)據(jù)庫(kù)中讀取數(shù)據(jù),不能修正原始數(shù)據(jù);而視圖可以修正更新數(shù)據(jù)庫(kù)。5.3.1 利用查詢(xún)?cè)O(shè)計(jì)器創(chuàng)建查詢(xún) 查詢(xún)?cè)O(shè)計(jì)器的運(yùn)用方法和視圖設(shè)計(jì)器根本類(lèi)似,但不需求先翻開(kāi)數(shù)據(jù)庫(kù),查詢(xún)所要用到的數(shù)據(jù)表可以在閱讀窗口中添加。下面用舉例闡明創(chuàng)建查詢(xún)的詳細(xì)步驟。 【例55】利用查詢(xún)?cè)O(shè)計(jì)器創(chuàng)建一個(gè)單表查詢(xún)“教師職稱(chēng)表,使其能查詢(xún)出“教師根本情況表里的“編號(hào)、“姓
19、名、“職稱(chēng)和“所屬部門(mén)信息。 操作步驟如下:1在系統(tǒng)菜單下選擇“文件“新建,在出現(xiàn)的“新建對(duì)話(huà)框中選擇“查詢(xún),然后點(diǎn)擊“新建文件按鈕,如圖5-44所示。 圖5-44 “新建對(duì)話(huà)框 2在彈出的“翻開(kāi)對(duì)話(huà)框中閱讀到查詢(xún)所要用到的數(shù)據(jù)表,如圖5-45所示。然后添加到“查詢(xún)?cè)O(shè)計(jì)器中。假設(shè)要添加多張數(shù)據(jù)表,那么可點(diǎn)擊“其他按鈕逐一添加,如圖5-46所示。添加完成后點(diǎn)擊“封鎖按鈕前往“查詢(xún)?cè)O(shè)計(jì)器。 圖5-45 “翻開(kāi)對(duì)話(huà)框 圖5-46 “添加表和視圖對(duì)話(huà)框3在“查詢(xún)?cè)O(shè)計(jì)器中添加好查詢(xún)所需求的字段。從“可用字段列表中選擇“教師編號(hào)、“姓名、“職稱(chēng)和“所屬部門(mén)添加到“選定字段列表中,如圖5-47所示。 圖5-
20、47 查詢(xún)?cè)O(shè)計(jì)器“字段選項(xiàng)卡 圖5-48 “排序根據(jù)選項(xiàng)卡4設(shè)置排序規(guī)那么。在“排序根據(jù)標(biāo)簽中,選擇“教師編號(hào)為排序條件,并按升序陳列,如圖5-48所示。5保管查詢(xún)。點(diǎn)擊“封鎖按鈕,確認(rèn)保管查詢(xún),如圖5-49所示。在“另存為對(duì)話(huà)框中給查詢(xún)?nèi)∶奥毞Q(chēng)部門(mén)查詢(xún).qpr后保管,如圖5-50所示。 圖5-49 “保管確認(rèn)對(duì)話(huà)框 圖5-50 “另存為對(duì)話(huà)框6運(yùn)轉(zhuǎn)查詢(xún)。在系統(tǒng)菜單項(xiàng)選擇擇“查詢(xún)“運(yùn)轉(zhuǎn)查詢(xún),可以查看查詢(xún)的結(jié)果,如圖5-51所示。 圖5-51 運(yùn)轉(zhuǎn)結(jié)果5.3.2 利用查詢(xún)導(dǎo)游創(chuàng)建查詢(xún) 利用查詢(xún)導(dǎo)游創(chuàng)建查詢(xún)的方法,和運(yùn)用視圖導(dǎo)游的方法根本一樣,下 面簡(jiǎn)單舉例闡明。【例56】用查詢(xún)導(dǎo)游建立一個(gè)多表
21、查詢(xún)“職工實(shí)發(fā)工資表,使其包含“教師編號(hào)、“姓名、“所屬部門(mén)和“實(shí)發(fā)數(shù)信息。 操作步驟如下:1在系統(tǒng)菜單下選擇“文件“新建,在出現(xiàn)的“新建對(duì)話(huà)框中選擇“查詢(xún),然后點(diǎn)擊“導(dǎo)游按鈕,在彈出的“導(dǎo)游選取對(duì)話(huà)框中,選擇“查詢(xún)導(dǎo)游,如圖5-52所示。圖5-52 “查詢(xún)導(dǎo)游選取對(duì)話(huà)框 圖5-53 “步驟1 字段選取2選取查詢(xún)所要運(yùn)用的數(shù)據(jù)表。在初始形狀下,右邊的“數(shù)據(jù)庫(kù)和表欄是空的。我們需求點(diǎn)擊后面的按鈕來(lái)閱讀原始表。如圖5-53所示。在出現(xiàn)的“翻開(kāi)對(duì)話(huà)框中閱讀到查詢(xún)所要用到的“教師庫(kù)后確認(rèn)。3添加好數(shù)據(jù)庫(kù)后,從右邊的“數(shù)據(jù)庫(kù)和表列表框中選擇需求的表,然后選擇字段組成查詢(xún)。在這里選擇“教師工資表中的“教師
22、編號(hào)和“實(shí)發(fā)數(shù),選擇“教師根本信息表中的“姓名和“所屬部門(mén),如圖5-54 所示。 圖5-54 “步驟1 字段選取 圖5-55 “另存為對(duì)話(huà)框4在下一步“步驟2 - 為表建立關(guān)系里設(shè)置好表間關(guān)系為“教師工資表.教師編號(hào)=教師根本信息表.教師編號(hào)。5在“步驟2a - 字段選取中將記錄匹配原那么設(shè)置為“緊包含匹配的行。6在“步驟3 - 挑選記錄中直接按“下一步。7在“步驟4 排序記錄中選擇按“教師編號(hào)升序陳列。8在“步驟5 - 完成中選擇“保管查詢(xún)后,點(diǎn)擊“完成按鈕,然后在彈出的“另存為對(duì)話(huà)框中將查詢(xún)保管為“職工實(shí)發(fā)工資表.qpr,如圖5-55所示。5.4 查詢(xún)的輸出去向 查詢(xún)的創(chuàng)建方法和視圖根本一
23、樣,但是在運(yùn)用功能方面卻有很大的區(qū)別。視圖的特點(diǎn)在于它可以將修正更新到數(shù)據(jù)源,而查詢(xún)的優(yōu)勢(shì)那么表達(dá)在查詢(xún)的輸出多樣性上,下面將舉例闡明查詢(xún)?nèi)ハ虻脑O(shè)置方法。【例57】修正例5.6中的查詢(xún)?nèi)ハ?,使其作為圖形輸出。 操作步驟如下:1翻開(kāi)上例創(chuàng)建的“職稱(chēng)部門(mén)查詢(xún).qpr,進(jìn)入“查詢(xún)?cè)O(shè)計(jì)器后,選擇系統(tǒng)菜單“查詢(xún)“查詢(xún)?nèi)ハ蜻x項(xiàng),如圖5-56所示。 圖5-56 “查詢(xún)?cè)O(shè)計(jì)器2在“查詢(xún)?nèi)ハ驅(qū)υ?huà)框中,給出了七種輸出格式供用戶(hù)選擇,默以為“閱讀,各種去向的含義為:閱讀:在“閱讀窗口中顯示查詢(xún)結(jié)果;暫時(shí)表:將查詢(xún)結(jié)果存儲(chǔ)在一個(gè)用戶(hù)命名的暫時(shí)只讀表中;表:把結(jié)果存為一個(gè)由用戶(hù)命名的表,封鎖查詢(xún)后,結(jié)果依然保管在該表中
24、,如圖5-57;圖形:把查詢(xún)的結(jié)果可利用Microsoft的圖形功能輸出;屏幕:在當(dāng)前輸出窗口顯示查詢(xún)結(jié)果,還可指定輸出到打印機(jī)或者文本文件;報(bào)表:作為數(shù)據(jù)源向報(bào)表文件發(fā)送查詢(xún)結(jié)果;標(biāo)簽:作為數(shù)據(jù)源向標(biāo)簽文件發(fā)送查詢(xún)結(jié)果; 圖5-57 “查詢(xún)?nèi)ハ驅(qū)υ?huà)框 該例中我們要求用圖形輸出,在“查詢(xún)?nèi)ハ驅(qū)υ?huà)框中選擇“圖形后確認(rèn),如圖5-58所示。 圖5-58 “查詢(xún)?nèi)ハ驅(qū)υ?huà)框圖5-59 “步驟2 定義規(guī)劃3設(shè)置好查詢(xún)?nèi)ハ蚝?,翻開(kāi)系統(tǒng)“查詢(xún)菜單,選擇“運(yùn)轉(zhuǎn)查詢(xún),進(jìn)入到“圖形導(dǎo)游窗口。在“步驟2定義規(guī)劃中,需求定義圖形的橫、縱坐標(biāo)的數(shù)據(jù)來(lái)源。在這里要留意操作的方法:將可用字段中的“實(shí)發(fā)數(shù)拖動(dòng)到中間“數(shù)據(jù)系列列
25、表框中,再把“姓名列拖動(dòng)到右邊的“A坐標(biāo)軸B中,如圖5-59所示。4在下一步“步驟3 - 選擇圖形款式中,系統(tǒng)給出了許多的圖形款式,根據(jù)需求選擇一個(gè),再按“下一步按鈕,如圖5-60所示。 圖5-60 “步驟3 選擇圖款式圖5-61 “步驟4 完成5在“步驟4 - 完成中輸入圖形的標(biāo)題后,可點(diǎn)擊“預(yù)覽窗口查看下結(jié)果,確認(rèn)后點(diǎn)擊“完成按鈕,如圖5-61所示。在彈出的“另存為窗口中保管為“工資圖表。6保管終了后進(jìn)入表單設(shè)計(jì)界面,如圖5-62所示。在這里我們可以看到圖形是一個(gè)以姓名為橫坐標(biāo),工資實(shí)發(fā)數(shù)為縱坐標(biāo)的圖表,執(zhí)行后的效果如圖5-63所示。圖5-62 表單設(shè)計(jì)界面 圖5-63 運(yùn)轉(zhuǎn)結(jié)果習(xí)題5一、
26、選擇題1在Visual foxpro中,關(guān)于查詢(xún)和視圖的正確描畫(huà)是 A查詢(xún)是一個(gè)預(yù)先定義好的SQL SELECT 語(yǔ)句文件B視圖是一個(gè)預(yù)先定義好的SQL SELECT 語(yǔ)句文件C查詢(xún)和視圖是同一種文件,只是稱(chēng)號(hào)不同D查詢(xún)和視圖都是一個(gè)存儲(chǔ)數(shù)據(jù)的表2有關(guān)查詢(xún)?cè)O(shè)計(jì)器,以下描畫(huà)正確的選項(xiàng)是 A“聯(lián)接選項(xiàng)卡與SQL語(yǔ)句的GROUP BY短語(yǔ)對(duì)應(yīng)B“挑選選項(xiàng)卡與SQL語(yǔ)句的HAVING短語(yǔ)對(duì)應(yīng)C“排序根據(jù)選項(xiàng)卡與SQL語(yǔ)句的ORDER BY短語(yǔ)對(duì)應(yīng)D“分組根據(jù)選項(xiàng)卡與SQL語(yǔ)句的JOIN ON短語(yǔ)對(duì)應(yīng)3以下關(guān)于“視圖的描畫(huà)正確的選項(xiàng)是 A視圖保管在工程文件中 B視圖保管在數(shù)據(jù)庫(kù)文件中 C視圖保管在表文件
27、中 D視圖保管在查詢(xún)文件中4視圖設(shè)計(jì)器中含有的、但查詢(xún)?cè)O(shè)計(jì)器卻沒(méi)有的選項(xiàng)卡是 A挑選 B排序根據(jù) C分組根據(jù) D更新條件5下面關(guān)于查詢(xún)描畫(huà)正確的選項(xiàng)是 A可以運(yùn)用CREATE VIEW 翻開(kāi)查詢(xún)?cè)O(shè)計(jì)器B運(yùn)用查詢(xún)?cè)O(shè)計(jì)器可以生成一切的SQP查詢(xún)語(yǔ)句C運(yùn)用查詢(xún)?cè)O(shè)計(jì)器生成的SQL語(yǔ)句存盤(pán)后將存放在擴(kuò)展名為QPR的文件中D運(yùn)用DO語(yǔ)句執(zhí)行查詢(xún)時(shí),可以不帶擴(kuò)展名6在“添加表和視圖窗口,“其他按鈕的作用是讓用戶(hù)選擇 A數(shù)據(jù)庫(kù)表 B數(shù)據(jù)庫(kù) C查詢(xún) D不屬于當(dāng)前數(shù)據(jù)庫(kù)的表7在Visual FoxPro中,關(guān)于視圖的正確表達(dá)是 A視圖與數(shù)據(jù)庫(kù)表一樣,用來(lái)存儲(chǔ)數(shù)據(jù)B視圖不能同數(shù)據(jù)庫(kù)表進(jìn)展銜接操作 C在視圖上不能進(jìn)展更新操作D視圖是從一個(gè)或多個(gè)數(shù)據(jù)庫(kù)表導(dǎo)出的虛擬表8在Visual foxpro中,以下關(guān)于視圖的描畫(huà)錯(cuò)誤的選項(xiàng)是 A經(jīng)過(guò)視圖可以對(duì)表進(jìn)展查詢(xún)B經(jīng)過(guò)視圖可以對(duì)表進(jìn)展更新C視圖就是一個(gè)虛表D視圖就是一種查詢(xún) 9下面有關(guān)對(duì)視圖的描畫(huà)正確的選項(xiàng)是 A可以運(yùn)用MODIFY STRUCTURE命令修正視圖的構(gòu)造B視圖不能刪除,否那么影響原來(lái)的數(shù)據(jù)文件C視圖是對(duì)表的復(fù)制產(chǎn)生的D運(yùn)用對(duì)視圖進(jìn)展查詢(xún)時(shí)必需事先翻開(kāi)該視圖所在的數(shù)據(jù)庫(kù) 10下面關(guān)于視圖的表達(dá)正確的選項(xiàng)是 A視圖是從數(shù)據(jù)庫(kù)中派生出來(lái)的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 第2.6練 指數(shù)與指數(shù)函數(shù)(解析版)-2024年高考數(shù)學(xué)一輪復(fù)習(xí)精講精練寶典(新高考專(zhuān)用)
- 2022年北京市初三一模道德與法治試題匯編:遵守社會(huì)規(guī)則
- 2024人工智能法律倫理
- 2020-2021學(xué)年江蘇省南京外國(guó)語(yǔ)河西初級(jí)中學(xué)等三校七年級(jí)(下)期中數(shù)學(xué)試卷
- 衢州屋檐防水施工方案
- 2024年廣西地區(qū)中考滿(mǎn)分作文《給小廣的一封信》5
- 第1課 十字路口-認(rèn)識(shí)多圖層動(dòng)畫(huà) 教學(xué)設(shè)計(jì)-2023-2024學(xué)年遼師大版(2015)初中信息技術(shù)八年級(jí)下冊(cè)
- 合同范例和合同范例區(qū)別
- 代銷(xiāo)電器合同范例
- 可持續(xù)發(fā)展的工作實(shí)踐計(jì)劃
- 《PLC應(yīng)用技術(shù)(西門(mén)子S7-1200)第二版》全套教學(xué)課件
- 第一單元練習(xí)卷(單元測(cè)試)2023-2024學(xué)年統(tǒng)編版語(yǔ)文六年級(jí)下冊(cè)
- 新《鐵路勞動(dòng)安全》考試題庫(kù)500題(含答案)
- 基層醫(yī)療衛(wèi)生機(jī)構(gòu)崗位設(shè)置指導(dǎo)意見(jiàn)
- micro830和micro850可編程控制器手冊(cè)
- 文件材料歸檔(移交)清單
- 注塑正交試驗(yàn)(DOE)案例表
- 漯河市物業(yè)服務(wù)收費(fèi)管理辦法
- 2022年湖南(土建)二級(jí)造價(jià)師考試題庫(kù)匯總(含基礎(chǔ)和實(shí)務(wù))
- 歷屆全國(guó)初中數(shù)學(xué)聯(lián)賽真題及答案
- 頸椎病ppt課件
評(píng)論
0/150
提交評(píng)論