版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第5章查詢與視圖設(shè)計(jì)5.1應(yīng)用查詢向?qū)?chuàng)建查詢
5.2應(yīng)用查詢?cè)O(shè)計(jì)器設(shè)計(jì)查詢
5.3查詢文件設(shè)計(jì)舉例
5.4視圖設(shè)計(jì)
5.1應(yīng)用查詢向?qū)?chuàng)建查詢
如果要快速創(chuàng)建查詢,可使用VisualFoxPro的查詢向?qū)А2樵兿驅(qū)Э梢越⒁话阌猛镜牟樵兾募吞厥庥猛镜牟樵兾募?。在?chuàng)建時(shí),向?qū)О唇换シ绞皆儐栍脩粝M谀男┍砘蛞晥D中搜索信息,并根據(jù)用戶對(duì)一系列問題的交互式回答來設(shè)置查詢文件的功能。用查詢向?qū)刹樵兾募牟襟E如下:
(1)選擇“文件”菜單,下拉菜單的“新建”命令項(xiàng),彈出“新建”對(duì)話框,如圖5.1所示。在新建對(duì)話框中選中“查詢(Q)”選項(xiàng),并單擊“向?qū)?W)”按鈕。圖5.1“新建”對(duì)話框
(2)在如圖5.2所示的“向?qū)нx取”對(duì)話框中,選擇所需生成的查詢文件類型。然后選擇“查詢向?qū)А鳖愋?,并單擊“確定”按鈕,將彈出“查詢向?qū)А辈襟E1對(duì)話框——字段選取對(duì)話框,如圖5.3所示。圖5.2“向?qū)нx取”對(duì)話框圖5.3“查詢向?qū)А辈襟E1
(4)在圖5.4所示的對(duì)話框中,選擇篩選條件,也可以不設(shè)置篩選條件,單擊“下一步”按鈕。圖5.4“查詢向?qū)А辈襟E3
(5)在圖5.5所示的對(duì)話框中,選取“編號(hào)”作為排序字段,然后單擊“添加”按鈕,使之添加到右側(cè)的選定字段列表框中,繼續(xù)單擊“下一步”按鈕。圖5.5“查詢向?qū)А辈襟E4
(6)在圖5.6所示的對(duì)話框中,設(shè)置限制記錄的數(shù)量和百分比,也可以不設(shè)置,取默認(rèn)值,單擊“下一步”按鈕。圖5.6“查詢向?qū)А辈襟E4a
(7)在圖5.7所示的對(duì)話框中,選擇“保存并運(yùn)行查詢”選項(xiàng),然后單擊“完成”按鈕,這時(shí)查詢文件立即運(yùn)行,如圖5.8所示。圖5.7“查詢向?qū)А辈襟E5圖5.8查詢文件運(yùn)行結(jié)果
5.2應(yīng)用查詢?cè)O(shè)計(jì)器設(shè)計(jì)查詢
5.2.1查詢?cè)O(shè)計(jì)器
1.啟動(dòng)查詢?cè)O(shè)計(jì)器的方法
啟動(dòng)查詢?cè)O(shè)計(jì)器,建立查詢文件的方法很多:
(1)選擇“文件”菜單下的“新建”選項(xiàng),或單擊常用“工具欄”上的“新建”按鈕,打開“新建”對(duì)話框,然后選擇“查詢”并單擊“新建文件”按鈕,這樣就可以打開查詢?cè)O(shè)計(jì)器。
(2)用CREATEQUERY命令打開查詢?cè)O(shè)計(jì)器并建立查詢文件。
(3)利用SQLSELECT命令直接編輯?.qpr文件建立查詢文件。
2.查詢?cè)O(shè)計(jì)器的窗口
選擇“文件”|“新建”菜單項(xiàng),彈出的新建文件對(duì)話框如圖5.9所示,選擇“查詢”單選按鈕,然后單擊“新建文件”按鈕。接著啟動(dòng)查詢?cè)O(shè)計(jì)器,并顯示“添加表或視圖”對(duì)話框,如圖5.10所示。從中選擇用于建立查詢的表或視圖,單擊要選擇的表或視圖,然后單擊“添加”按鈕。如果單擊“其他”按鈕還可以選擇自由表。當(dāng)選擇完表或視圖后,單擊“關(guān)閉”按鈕正式進(jìn)入如圖5.11所示的“查詢?cè)O(shè)計(jì)器”窗口。注意,當(dāng)一個(gè)查詢是基于多個(gè)表時(shí),這些表之間必須是有聯(lián)系的?!安樵?cè)O(shè)計(jì)器”會(huì)自動(dòng)根據(jù)聯(lián)系提取聯(lián)接條件,否則在打開圖5.11所示的“查詢?cè)O(shè)計(jì)器”之前還會(huì)打開一個(gè)指定聯(lián)接條件的對(duì)話框,由用戶來設(shè)計(jì)聯(lián)接條件。圖5.9“新建”文件對(duì)話框圖5.10“添加表或視圖”對(duì)話框圖5.11“查詢?cè)O(shè)計(jì)器”窗口查詢?cè)O(shè)計(jì)器窗口中有六個(gè)選項(xiàng)卡,其功能和SQLSELECT命令的各子句是相對(duì)應(yīng)的。
字段單擊“字段”選項(xiàng)卡,用來設(shè)置查詢結(jié)果中要包含的字段,對(duì)應(yīng)于SELECT語句中的輸出字段。雙擊“可用字段”列表框中的字段,相應(yīng)的字段就自動(dòng)移到右邊的“選定字段”列表框中。如果要選擇全部字段,則單擊“全部添加”按鈕。在“函數(shù)和表達(dá)式”編輯框中,輸入或由“表達(dá)式生成器”生成一個(gè)計(jì)算表達(dá)式,如AVG(入學(xué)成績)。
聯(lián)接如果要查詢多個(gè)表,可以在“聯(lián)接”選項(xiàng)卡中設(shè)置表之間的關(guān)聯(lián)條件,對(duì)應(yīng)于JOINON子句的功能。
篩選在“篩選”選項(xiàng)卡中設(shè)置查詢條件,對(duì)應(yīng)于WHERE子句的功能。排序依據(jù)在“排序依據(jù)”選項(xiàng)卡中指定排序的字段和排序方式,對(duì)應(yīng)于ORDERBY子句的功能。
分組依據(jù)在“分組依據(jù)”選項(xiàng)卡中設(shè)置分組條件,對(duì)應(yīng)于GROUPBY子句和HAVING子句的功能。
雜項(xiàng)在“雜項(xiàng)”選項(xiàng)卡中設(shè)置有無重復(fù)記錄以及查詢結(jié)果中顯示的記錄數(shù)等。
由此可見,查詢?cè)O(shè)計(jì)器實(shí)際上是SQLSELECT語句的圖形化界面。5.2.2建立查詢文件
例5.1
建立一個(gè)查詢文件,要求顯示員工的部門、編號(hào)、姓名、出生日期及基本工資等信息,并按“基本工資”字段的數(shù)據(jù)升序排列記錄。具體的操作如下:
(1)啟動(dòng)查詢?cè)O(shè)計(jì)器。啟動(dòng)查詢?cè)O(shè)計(jì)器,并將員工表(jbqk.dbf)添加到查詢?cè)O(shè)計(jì)器中。
(2)選取查詢所需的字段。在查詢?cè)O(shè)計(jì)器中單擊“字段”選項(xiàng)卡,從“可用字段”列表框中選擇“編號(hào)”字段,再單擊“添加”按鈕,將其添加到“選定字段”列表框中,使用上述方法將“姓名”、“出生日期”、“部門”和“基本工資”字段添加到“選定字段”列表框中,這5個(gè)字段即為查詢結(jié)果中要顯示的字段,如圖5.12所示?!斑x定字段”列表框中顯示字段的順序是可以改變的,用鼠標(biāo)拖動(dòng)選定的字段左邊的小方塊上下移動(dòng),即可調(diào)整字段的顯示順序。圖5.12選定字段
(3)設(shè)置排序字段。如果在“排序依據(jù)”選項(xiàng)卡中不設(shè)置排序條件,則顯示結(jié)果按表中記錄的原順序顯示?,F(xiàn)要求記錄按“基本工資”的升序顯示記錄,因此在“選定字段”列表框中選擇“基本工資”字段,再單擊“添加”按鈕,將其添加到“排序條件”列表框中,再選擇“排序選項(xiàng)”的“升序”單選按鈕,如圖5.13所示。
(4)保存查詢文件。查詢文件設(shè)計(jì)完成后,選擇系統(tǒng)菜單中“文件”下拉菜單的“另存為”選項(xiàng),或單擊常用工具欄上的“保存”按鈕,打開“另存為”對(duì)話框。選定查詢文件將要保存的位置,輸入查詢文件名,并單擊“保存”按鈕。圖5.13設(shè)置排序字段
(5)查看對(duì)應(yīng)的SQLSELECT語句。完成查詢?cè)O(shè)計(jì)的交互式操作之后,單擊“查詢?cè)O(shè)計(jì)器”工具欄中的“SQL”按鈕,或從“查詢”菜單選項(xiàng)中選擇“查看SQL”命令,就可以看到查詢文件的SQLSELECT語句內(nèi)容。例如,上面所建立查詢文件的SQLSELECT語句如下:
SELECTjbqk.部門,jbqk.編號(hào),jbqk.姓名,jbqk.出生年月,jbqk.基本工資;
FROM示范數(shù)據(jù)庫!jbqk;
ORDERBYjbqk.基本工資
(6)運(yùn)行查詢文件。單擊常用工具欄上的“!”按鈕,就能運(yùn)行查詢文件,運(yùn)行結(jié)果如圖5.14所示。圖5.14查詢文件運(yùn)行結(jié)果5.2.3查詢文件的運(yùn)行方法
查詢文件設(shè)計(jì)完成之后,通過運(yùn)行查詢文件,顯示查詢文件的輸出結(jié)果,查詢結(jié)果不滿意或不符合要求時(shí),可重新修改查詢文件。同時(shí)在設(shè)計(jì)查詢過程中可以設(shè)置查詢結(jié)果的去向(輸出結(jié)果),以滿足用戶的不同要求。
使用查詢?cè)O(shè)計(jì)器設(shè)計(jì)查詢時(shí),每設(shè)計(jì)一步,都可以運(yùn)行查詢文件,查看運(yùn)行結(jié)果,這樣可以邊設(shè)計(jì)、邊運(yùn)行,對(duì)查詢結(jié)果不滿意可以再設(shè)計(jì)、再運(yùn)行,直至達(dá)到滿意的效果。交互式設(shè)計(jì)查詢工作完成并保存之后,即可利用菜單選項(xiàng)或命令運(yùn)行查詢文件。
(1)在查詢?cè)O(shè)計(jì)器中直接運(yùn)行。在查詢?cè)O(shè)計(jì)器窗口,選擇“查詢”菜單中的“運(yùn)行查詢”選項(xiàng),或單擊常用工具欄的“!”按鈕,即可運(yùn)行查詢。上面建立的查詢文件就是用此方法運(yùn)行的。
(2)利用菜單選項(xiàng)運(yùn)行。在設(shè)計(jì)查詢過程中或保存查詢文件后,單擊“程序”菜單中的“運(yùn)行”選項(xiàng),打開“運(yùn)行”對(duì)話框。然后選擇要運(yùn)行的查詢文件,再單擊“運(yùn)行”按鈕,即可運(yùn)行。
(3)命令方式運(yùn)行。在命令窗口中輸入運(yùn)行查詢文件的命令,也可以運(yùn)行查詢文件。命令格式為
DO查詢文件名.qpr5.2.4修改查詢文件
用戶可以在任何時(shí)候使用查詢?cè)O(shè)計(jì)器來修改以前建立的查詢文件。下面針對(duì)上面建立的查詢文件,對(duì)其進(jìn)行修改,使其只查詢部門是“軟件中心”的相關(guān)記錄,并以“基本工資”字段降序排列記錄,這就需要設(shè)置“篩選”條件。具體步驟如下:
(1)打開查詢?cè)O(shè)計(jì)器。選擇“文件”菜單中的“打開”選項(xiàng),指定文件類型為“查詢”,選擇相應(yīng)的查詢文件,單擊“確定”按鈕,即可打開該查詢文件對(duì)應(yīng)的查詢?cè)O(shè)計(jì)器窗口。另外,也可以使用命令修改查詢文件,命令格式為
MODIFYQUERY查詢文件名.qpr
(2)修改查詢條件。根據(jù)查詢結(jié)果的需要,可在6個(gè)查詢選項(xiàng)卡中對(duì)不同的選項(xiàng)進(jìn)行重新設(shè)置查詢條件。下面根據(jù)要求,對(duì)查詢文件進(jìn)行修改。
設(shè)置查詢條件,單擊“篩選”選項(xiàng)卡,從“字段名”下拉列表框中選取“部門”字段,在“條件”下拉列表框中選擇“=”,在“實(shí)例”文本框中輸入“軟件中心”,如圖5.15所示。圖5.15設(shè)置篩選條件修改排序順序,將排序順序改為按“基本工資”降序排列,單擊“排序依據(jù)”選項(xiàng)卡,從“排序選項(xiàng)”中選取“降序”選項(xiàng),并單擊其按鈕。
(3)運(yùn)行查詢文件。單擊常用工具欄上的“!”按鈕,運(yùn)行查詢文件,運(yùn)行結(jié)果如圖5.16所示。
(4)保存修改結(jié)果。選擇“文件”菜單中的“保存”選項(xiàng),或單擊常用工具欄上的“保存”按鈕,保存對(duì)文件的修改。然后單擊“關(guān)閉”按鈕,關(guān)閉查詢?cè)O(shè)計(jì)器。圖5.16查詢文件運(yùn)行結(jié)果5.2.5定向輸出查詢文件
通常,如果不選擇查詢結(jié)果的去向,系統(tǒng)將默認(rèn)查詢的結(jié)果顯示在“瀏覽”窗口中。也可以選擇其他輸出目的地,將查詢結(jié)果送往指定的地點(diǎn),例如輸出到臨時(shí)表、表、圖形、屏幕、報(bào)表和標(biāo)簽。查詢?nèi)ハ蚣昂x如下:
瀏覽查詢結(jié)果以瀏覽形式輸出到屏幕窗口上。
臨時(shí)表查詢結(jié)果保存到一個(gè)臨時(shí)的只讀表中。
表查詢結(jié)果保存到一個(gè)指定的表中。
圖形查詢結(jié)果輸出到圖形文件中。
屏幕查詢結(jié)果輸出到當(dāng)前活動(dòng)窗口中。
報(bào)表查詢結(jié)果輸出到一個(gè)報(bào)表文件中。
標(biāo)簽查詢結(jié)果輸出到一個(gè)標(biāo)簽文件中。下面將查詢文件的輸出修改到臨時(shí)表,具體操作方法如下:
(1)打開查詢?cè)O(shè)計(jì)器。
(2)選擇“查詢”菜單中“查詢?nèi)ハ颉边x項(xiàng),系統(tǒng)將顯示“查詢?nèi)ハ颉睂?duì)話框,如圖5.17所示。
(3)單擊“臨時(shí)表”按鈕,此時(shí)屏幕畫面出現(xiàn)對(duì)話框。在“臨時(shí)表名”文本框中輸入臨時(shí)表名,并單擊“確定”按鈕,關(guān)閉“查詢?nèi)ハ颉睂?duì)話框。
(4)保存對(duì)查詢文件的修改。單擊查詢?cè)O(shè)計(jì)器窗口的“關(guān)閉”按鈕,關(guān)閉查詢?cè)O(shè)計(jì)器。
(5)運(yùn)行該查詢文件,由于將查詢結(jié)果輸出到了一個(gè)臨時(shí)表中,因此查詢結(jié)果將不在?“瀏覽”窗口中顯示。圖5.17查詢?nèi)ハ驅(qū)υ捒蜻x擇“顯示”菜單中的“瀏覽”選項(xiàng),將顯示該臨時(shí)表的內(nèi)容。單擊瀏覽窗口的“關(guān)閉”按鈕,關(guān)閉瀏覽窗口。如果用戶只需瀏覽查詢結(jié)果,可輸出到瀏覽窗口。瀏覽窗口中的表是一個(gè)臨時(shí)表,關(guān)閉瀏覽窗口后,該臨時(shí)表將自動(dòng)刪除。用戶可根據(jù)需要選擇查詢?nèi)ハ颍绻x擇輸出為圖形,在運(yùn)行該查詢文件時(shí),系統(tǒng)將啟動(dòng)圖形向?qū)В脩舾鶕?jù)圖形向?qū)У奶崾具M(jìn)行操作,將查詢結(jié)果送到MicrosoftGraph中制作圖表。把查詢結(jié)果用圖形的方式顯示出來雖然是一種比較直觀的顯示方式,但它要求在查詢結(jié)果中必須包含有用于分類的字段和數(shù)值型字段。另外,表越大圖形向?qū)幚韴D表的時(shí)間就越長,因此用戶還必須考慮表的大小。
5.3查詢文件設(shè)計(jì)舉例
例5.2
設(shè)計(jì)一個(gè)關(guān)聯(lián)表查詢文件。
①打開查詢?cè)O(shè)計(jì)器窗口。
②添加兩個(gè)數(shù)據(jù)庫表:dgd.dbf和gys.dbf。
③設(shè)置查詢文件的輸出字段:dgd.職工號(hào),dgd.供應(yīng)商號(hào),dgd.訂購單號(hào),dgd.訂購日期,dgd.總金額,gys.供應(yīng)商名和gys.地址。
④設(shè)置多表的關(guān)聯(lián)條件:dgd.供應(yīng)商號(hào)=gys.供應(yīng)商號(hào),如圖5.18所示。圖5.18多表查詢文件⑤運(yùn)行查詢文件的結(jié)果,如圖5.19所示。圖5.19多表查詢運(yùn)行結(jié)果
例5.3
設(shè)計(jì)一個(gè)運(yùn)用“函數(shù)和表達(dá)式”計(jì)算職工實(shí)發(fā)工資的查詢文件。
①打開查詢?cè)O(shè)計(jì)器窗口。
②設(shè)置查詢文件的輸出字段jbqk.部門,jbqk.編號(hào),jbqk.姓名,jbqk.職稱,jbqk.基本工資,jbqk.獎(jiǎng)金和實(shí)發(fā)工資。
③單擊“函數(shù)和表達(dá)式”文本框后邊的“...”按鈕,彈出如圖5.20所示的“表達(dá)式生成器”對(duì)話框,雙擊“字段”列表框中的“基本工資”,使得它出現(xiàn)在“表達(dá)式”文本框中。再雙擊“數(shù)學(xué)”列表框中的“+”,然后雙擊“字段”列表框中的“獎(jiǎng)金”,之后輸入“AS實(shí)發(fā)工資”,并單擊“確定”按鈕?;蛘邌螕簟疤砑印卑粹o,將表達(dá)式“jbqk.基本工資+jbqk.獎(jiǎng)金AS實(shí)發(fā)工資”添加到“選定字段”列表框中。圖5.20表達(dá)式生成器④運(yùn)行查詢文件的結(jié)果,如圖5.21所示。這種查詢文件不僅具有計(jì)算功能,而且具有增加表頭字段的功能。圖5.21復(fù)雜查詢的運(yùn)行結(jié)果 5.4視圖設(shè)計(jì)
視圖從應(yīng)用的角度來講類似于表,它具有表的屬性。對(duì)視圖的所有操作,如打開與關(guān)閉、設(shè)置屬性(如字段的顯示格式、有效性規(guī)則等)、修改結(jié)構(gòu)以及刪除等,都與對(duì)表的操作相同。視圖作為數(shù)據(jù)庫的一種對(duì)象,有其專門的設(shè)計(jì)工具和命令。同時(shí),視圖還具有查詢的特點(diǎn),可以用來從一個(gè)或多個(gè)相關(guān)聯(lián)的表中檢索有用信息。而且視圖還可以更新數(shù)據(jù)源表中的數(shù)據(jù),這也是視圖與查詢的根本區(qū)別。
視圖有兩種類型:一種是本地視圖,另一種是遠(yuǎn)程視圖。本地視圖是從當(dāng)前數(shù)據(jù)庫的表或者其他視圖中選取信息,而遠(yuǎn)程視圖則是從遠(yuǎn)程服務(wù)器的數(shù)據(jù)源中(如SQLServer數(shù)據(jù)庫)提取數(shù)據(jù)。5.4.1視圖設(shè)計(jì)器
1.啟動(dòng)視圖設(shè)計(jì)器
(1)打開一個(gè)需要使用的數(shù)據(jù)庫文件。
(2)在系統(tǒng)菜單中,選擇“文件”/“新建”選項(xiàng),打開“新建”對(duì)話框。選擇“視圖”單選按鈕,再單擊“新建文件”按鈕,在打開視圖設(shè)計(jì)器的同時(shí),還將打開“添加表或視圖”對(duì)話框,將所需的表添加到視圖設(shè)計(jì)器中。
(3)使用命令也可以啟動(dòng)視圖設(shè)計(jì)器,在命令窗口鍵入命令:CREATEVIEW文件名。需要注意的是,視圖不能單獨(dú)存在,它只能是數(shù)據(jù)庫的對(duì)象,所以在打開數(shù)據(jù)庫時(shí),視圖文件不能操作。
2.視圖設(shè)計(jì)器窗口
視圖設(shè)計(jì)器的窗口和查詢?cè)O(shè)計(jì)器基本相同,不同之處是視圖設(shè)計(jì)器下半部分的選項(xiàng)卡有7個(gè),其中6個(gè)的功能和用法與查詢?cè)O(shè)計(jì)器完全相同。這里介紹一下它不同于查詢?cè)O(shè)計(jì)器的“更新條件”選項(xiàng)卡的功能和使用方法。單擊“更新條件”選項(xiàng)卡,如圖5.22所示。圖5.22更新條件選項(xiàng)卡5.4.2建立視圖
1.單表視圖的設(shè)計(jì)
職工表(jbqk.dbf)是由多個(gè)字段組成的,如果只檢索和修改其中的編號(hào)、姓名、性別、部門、基本工資和獎(jiǎng)金字段,可以創(chuàng)建一個(gè)視圖來進(jìn)行操作。
例5.4
對(duì)職工表建立視圖,輸出字段為編號(hào)、姓名、性別、部門、基本工資和獎(jiǎng)金,并且檢索部門為“軟件中心”,性別為“男”的記錄。其操作步驟如下:
(1)先打開示范數(shù)據(jù)庫,再打開視圖設(shè)計(jì)器,將jbqk.dbf表添加到視圖設(shè)計(jì)器窗口。
(2)單擊視圖設(shè)計(jì)器的“字段”選項(xiàng)卡,將可用字段jbqk.編號(hào)、jbqk.姓名、jbqk.性別、jbqk.部門、jbqk.職稱和jbqk.基本工資、jbqk.獎(jiǎng)金添加到“選定字段”列表框中。
(3)單擊“篩選”選項(xiàng)卡,設(shè)置篩選的條件:部門="軟件中心"AND性別="男",如圖5.23所示。圖5.23篩選條件
(4)查看SQL語言。視圖實(shí)際上是一條SQLSELECT語句,單擊視圖工具欄上的“SQL”按鈕,立即顯示出SQL語言。通過查看SQL語言,增強(qiáng)讀者對(duì)SQL語言的理解。SQL語言的內(nèi)容如下:
SELECTjbqk.部門,jbqk.編號(hào),jbqk.姓名,jbqk.性別,jbqk.職稱,jbqk.基本工資;
jbqk.獎(jiǎng)金;
FROM示范數(shù)據(jù)庫!jbqk;
WHEREjbqk.部門="軟件中心"ANDjbqk.性別="男"
(5)運(yùn)行視圖。視圖的運(yùn)行和查詢文件的運(yùn)行完全一樣,單擊工具欄上的“!”按鈕,運(yùn)行結(jié)果如圖5.24所示。圖5.24視圖運(yùn)行結(jié)果
(6)存儲(chǔ)視圖。選擇“文件”菜單中的“另保存”選項(xiàng),出現(xiàn)“保存”對(duì)話框,在對(duì)話框中輸入視圖名后,單擊“確定”按鈕。
2.表視圖的設(shè)計(jì)
學(xué)生管理數(shù)據(jù)庫中的選課表,對(duì)于一般用戶來講是無法使用的,因?yàn)閷W(xué)號(hào)和課程號(hào)都采用的是代碼方式,所以有必要使用視圖方式進(jìn)行透明性操作。這樣,在操作過程中看到學(xué)號(hào)時(shí),就知道其學(xué)生姓名;看到課程號(hào)時(shí),就知道其課程名稱。
例5.5
對(duì)學(xué)生管理數(shù)據(jù)庫建立視圖,顯示學(xué)生姓名、課程名及成績。這里的姓名、課程名及成績等信息分布于學(xué)生、課程和選課3個(gè)表中,因此要建立一個(gè)以這3個(gè)數(shù)據(jù)表為數(shù)據(jù)源的視圖。具體操作步驟如下:
(1)新建視圖,并依次將學(xué)生表、選課表和課程表添加到視圖設(shè)計(jì)器窗口。
(2)選擇與設(shè)置輸出字段。在“字段”選項(xiàng)卡上,設(shè)定輸出字段為學(xué)生.學(xué)號(hào)、學(xué)生.姓名、選課.課程號(hào)、選課.課程名、選課.成績,如圖5.25所示。圖5.25視圖設(shè)計(jì)器
(3)設(shè)置聯(lián)接條件。這3個(gè)表之間有一定的關(guān)聯(lián)關(guān)系,由于它們之間的關(guān)聯(lián)關(guān)系已經(jīng)存在于數(shù)據(jù)庫中,所以關(guān)系表達(dá)式將自動(dòng)被帶進(jìn)來,如圖5.26所示。如果數(shù)據(jù)中沒有設(shè)置聯(lián)接,則需要在此進(jìn)行手工設(shè)置聯(lián)接關(guān)系表達(dá)式。操作方法是單擊“視圖設(shè)計(jì)器”工具欄中的“添加聯(lián)接”按鈕,進(jìn)入“聯(lián)接條件”對(duì)話框進(jìn)行設(shè)置。圖5.26設(shè)置聯(lián)接條件
(4)更新設(shè)計(jì)。本例中有3個(gè)表,不需要更新學(xué)生表和課程表(使用這兩個(gè)表的目的是幫助顯示學(xué)生成績),需要更新的只有選課表。在此選擇“更新條件”選項(xiàng)卡,在“表”下拉組合框中選擇“選課”,設(shè)置“關(guān)鍵字段”和“更新字段”,在“SQLWHERE子句包括”框中選擇“關(guān)鍵字和可更新字段”項(xiàng),在“使用更新”框中選擇“SQLUPDATE”項(xiàng)。
(5)保存該視圖,然后運(yùn)行該視圖??梢?,在顯示學(xué)號(hào)和課程號(hào)的同時(shí),顯示了相應(yīng)的學(xué)生姓名和課程名,如圖5.27所示。圖5.27視圖運(yùn)行結(jié)果
3.視圖參數(shù)的應(yīng)用
在利用視圖進(jìn)行信息查詢時(shí)可以設(shè)置參數(shù),讓用戶在使用時(shí)輸入?yún)?shù)值。
例5.6
對(duì)學(xué)生管理數(shù)據(jù)庫建立視圖,輸入任何一個(gè)學(xué)生的學(xué)號(hào)后,提取該學(xué)生所選的課程名和成績。
本例將建立一個(gè)在運(yùn)行時(shí)根據(jù)輸入學(xué)生學(xué)號(hào)而任意查詢的視圖,操作步驟如下:
(1)新建視圖,依次將學(xué)生表、選課表和課程表添加到視圖設(shè)計(jì)器窗口。
(2)選擇輸出字段。在“字段”選項(xiàng)卡上設(shè)定輸出字段為學(xué)生.姓名、課程.課程名和選課.成績。
(3)在“篩選”選項(xiàng)卡上設(shè)置字段名為學(xué)生.學(xué)號(hào)=?學(xué)號(hào),如圖5.28所示。圖5.28設(shè)置帶參數(shù)的篩選條件
(4)保存視圖,然后運(yùn)行該視圖,此時(shí)系統(tǒng)顯示“視圖參數(shù)”對(duì)話框,要求給出參數(shù)值,如"2003001",就能顯示該學(xué)號(hào)的學(xué)生選課情況,如圖5.29所示。圖5.29“視圖參數(shù)”對(duì)話框5.4.3使用視圖更新數(shù)據(jù)
更新數(shù)據(jù)是視圖的重要特點(diǎn),也是與查詢最大的區(qū)別。使用“更新條件”選項(xiàng)卡可以把用戶對(duì)表中數(shù)據(jù)所做的修改,包括更新、刪除及插入等結(jié)果返回到數(shù)據(jù)源中。
例5.7
對(duì)學(xué)生表建立一個(gè)視圖文件,使其顯示學(xué)號(hào)為“2003001”的學(xué)生信息,并將學(xué)號(hào)修改為“2006001”,將姓名修改為"王大力"。具體操作方法如下:
(1)啟動(dòng)視圖設(shè)計(jì)圖。將“學(xué)生表”加入視圖設(shè)計(jì)器。
(2)選擇字段。在“字段”選項(xiàng)卡中,將“可用字段”列表框中的全部字段添加到“選定字段”列表框中,作為視圖中要顯示的字段。
(3)設(shè)置篩選條件。單擊“篩選”選項(xiàng)卡,在“字段名”輸入框中單擊,從顯示的下拉列表中選取學(xué)號(hào)字段,從“條件”下拉列表中選擇“=”運(yùn)算符,在“實(shí)例”輸入框中單擊,顯示輸入提示符后輸入“?學(xué)號(hào)”。
(4)設(shè)置更新條件。
①選擇“更新條件”選項(xiàng)卡,設(shè)定學(xué)號(hào)和姓名為關(guān)鍵字段。方法是在“字段名”列表框下,分別在學(xué)號(hào)字段前“鑰匙”符號(hào)下單擊,將其設(shè)置為選中狀態(tài)。
②設(shè)定可修改的字段。由于只修改學(xué)號(hào)和姓名字段的值,因此,在這兩個(gè)字段前“鉛筆”符號(hào)下單擊,將其設(shè)置為可修改字段。③單擊“發(fā)送SQL更新”復(fù)選框,把視圖的修改結(jié)果返回到源數(shù)據(jù)表中。單擊“使用更新”設(shè)置為“
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年個(gè)體員工勞動(dòng)合同樣本(三篇)
- 產(chǎn)業(yè)園裝修合同終止范例
- 大數(shù)據(jù)中心居間合同
- 醫(yī)藥代表傭金居間合同
- 化工原料居間服務(wù)合同模板
- 圖書快遞批量運(yùn)輸合同樣本
- 服裝面料物流采購協(xié)議
- 服裝店裝修合同樣本及清單
- 便捷電子元器件居間協(xié)議
- 公寓裝修保修協(xié)議樣本
- 2023年大唐尿素投標(biāo)文件
- GB/T 6682-2008分析實(shí)驗(yàn)室用水規(guī)格和試驗(yàn)方法
- 《鋼鐵是怎樣煉成的》名著閱讀(精講課件) 初中語文名著導(dǎo)讀
- 縮窄性心包炎課件
- 《工程電磁場》配套教學(xué)課件
- 遼寧省錦州市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會(huì)明細(xì)及行政區(qū)劃代碼
- 職位管理手冊(cè)
- IPQC首檢巡檢操作培訓(xùn)
- 東南大學(xué) 固體物理課件
- 行政人事助理崗位月度KPI績效考核表
- 紀(jì)檢監(jiān)察機(jī)關(guān)派駐機(jī)構(gòu)工作規(guī)則全文詳解PPT
評(píng)論
0/150
提交評(píng)論