《數(shù)據(jù)庫》教案及student數(shù)據(jù)庫課件項(xiàng)目7 索引和視圖_第1頁
《數(shù)據(jù)庫》教案及student數(shù)據(jù)庫課件項(xiàng)目7 索引和視圖_第2頁
《數(shù)據(jù)庫》教案及student數(shù)據(jù)庫課件項(xiàng)目7 索引和視圖_第3頁
《數(shù)據(jù)庫》教案及student數(shù)據(jù)庫課件項(xiàng)目7 索引和視圖_第4頁
《數(shù)據(jù)庫》教案及student數(shù)據(jù)庫課件項(xiàng)目7 索引和視圖_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

項(xiàng)目七索引和視圖2項(xiàng)目要求

掌握索引和視圖的作用。掌握索引和視圖的創(chuàng)建方法。掌握索引和視圖的管理。3項(xiàng)目準(zhǔn)備1.索引索引:是一個單獨(dú)的、物理的數(shù)據(jù)庫結(jié)構(gòu),它是某個表中一列或若干列值的集合和相應(yīng)的指向表中物理標(biāo)識這些值的數(shù)據(jù)頁的邏輯指針清單。表的存儲:一個表的存儲是由兩部分組成的,一部分用來存放數(shù)據(jù)的數(shù)據(jù)頁面,另一部分存放索引的索引頁面。42.索引的作用索引就是加快檢索表中數(shù)據(jù)的方法。通過索引可以迅速地找到表中的數(shù)據(jù),而不必掃描整個數(shù)據(jù)庫。索引高效原理通常,索引頁面相對于數(shù)據(jù)頁面來說小得多。當(dāng)進(jìn)行數(shù)據(jù)檢索時,系統(tǒng)先搜索索引頁面,從中找到所需數(shù)據(jù)的指針,再直接通過指針從數(shù)據(jù)頁面中讀取數(shù)據(jù)。項(xiàng)目準(zhǔn)備53.索引的分類SQLServer2000中的索引主要分為聚集索引和非聚集索引。聚集索引:表中數(shù)據(jù)會根據(jù)索引鍵的順序重新排列;一個表只能有一個聚集索引。非聚集索引:不影響表中的數(shù)據(jù)存儲順序;一個表最多可以創(chuàng)建249個非聚集索引。項(xiàng)目準(zhǔn)備6項(xiàng)目準(zhǔn)備1.視圖視圖是從一個或多個表中導(dǎo)出的一個虛擬表,其內(nèi)容由查詢定義。視圖是虛表,它在存儲時只存儲視圖的定義(即SQL語句),而沒有存儲對應(yīng)的數(shù)據(jù)。(即,視圖對應(yīng)的數(shù)據(jù)并沒有存放在視圖中,而是仍然存放在導(dǎo)出視圖的表中)。視圖只在剛剛打開的一瞬間,通過定義從基本表中搜集數(shù)據(jù),并展現(xiàn)給用戶。72.視圖的作用視圖有兩個特別重要的作用:方便性:

視圖不僅可以簡化用戶對數(shù)據(jù)的理解,也可以簡化他們的操作。例如,那些被經(jīng)常使用的查詢可以被定義為視圖,從而使得用戶不必為以后的操作每次指定全部的條件。安全性:通過視圖用戶只能查詢和修改他們所能見到的數(shù)據(jù),用戶被限制在數(shù)據(jù)的不同子集上。項(xiàng)目準(zhǔn)備8項(xiàng)目7.1索引

任務(wù)1:創(chuàng)建和刪除非聚集索引任務(wù)2:創(chuàng)建聚集索引9任務(wù)1:創(chuàng)建和刪除非聚集索引

提出任務(wù)1.在cj表的kcdh列上創(chuàng)建一非聚集索引,索引名為NONCLU_INDEX。并查看創(chuàng)建該非聚集索引后表中數(shù)據(jù)的排列情況。2.刪除剛才創(chuàng)建的非聚集索引FJJ_INDEX。分析任務(wù)創(chuàng)建非聚集索引前后,表中的數(shù)據(jù)的排列次序不會發(fā)生變化。10任務(wù)1:創(chuàng)建和刪除非聚集索引

完成任務(wù)測試1:查看創(chuàng)建索引前cj表中數(shù)據(jù)的排列情況。步驟1:展開【student】數(shù)據(jù)庫,點(diǎn)擊【表】對象,在右側(cè)窗體中右擊cj表,選擇【打開表】|【返回所有行】命令,如圖1所示。在彈出的窗口中,顯示cj表中的數(shù)據(jù),如圖2所示。查看完畢后關(guān)閉cj表。(注意表中數(shù)據(jù)排列的規(guī)律)

圖1圖211任務(wù)1:創(chuàng)建和刪除非聚集索引

完成任務(wù)1.

操作步驟:在【企業(yè)管理器】窗口,右擊cj表,選擇【所有任務(wù)】|【管理索引】命令,如圖所示。12任務(wù)1:創(chuàng)建和刪除非聚集索引

在彈出的【管理索引】對話框中,選擇【新建】按鈕。如圖所示。13任務(wù)1:創(chuàng)建和刪除非聚集索引在彈出的【新建索引】對話框中,在【索引名稱】文本框輸入新建索引名“NONCLU_INDEX”,選中kcdh列前的復(fù)選框,如下圖所示(【索引選項(xiàng)】不選則默認(rèn)為非聚集索引)。單擊【確定】按鈕,回到原來界面,單擊【關(guān)閉】按鈕。14任務(wù)1:創(chuàng)建和刪除非聚集索引2.操作步驟重復(fù)1中的“步驟1”,彈出如圖所示窗口,選中已創(chuàng)建成功的索引NONCLU_INDEX,單擊【刪除】按鈕,則刪除該索引。單擊【關(guān)閉】按鈕,關(guān)閉【管理索引】窗口。15任務(wù)2:創(chuàng)建聚集索引

提出任務(wù)在cj表的kcdh列上創(chuàng)建一聚集索引,索引名為CLU_INDEX。并查看創(chuàng)建該聚集索引后表中數(shù)據(jù)的排列情況。分析任務(wù)創(chuàng)建聚集索引前后,表中的數(shù)據(jù)的排列次序會發(fā)生變化。16任務(wù)2:創(chuàng)建聚集索引

完成任務(wù)重復(fù)相關(guān)步驟,在彈出的【新建索引】對話框中,在【索引名稱】文本框輸入新建索引名“CLU_INDEX”,選中kcdh列前的復(fù)選框,在【索引選項(xiàng)】下選中【聚集索引】復(fù)選框,如下圖所示。單擊【確定】按鈕,回到原始界面,單擊【關(guān)閉】按鈕。

17任務(wù)2:創(chuàng)建聚集索引再次查看cj表中的數(shù)據(jù),會發(fā)現(xiàn)此時表中的數(shù)據(jù)的排列位置并發(fā)生變化,如圖所示,則說明聚集索引的創(chuàng)建影響表中數(shù)據(jù)排列的次序。

18項(xiàng)目擴(kuò)展基本語法——createINDEX語句(創(chuàng)建新索引)createNONCLUSTERED|CLUSTEREDINDEX索引名ON表名|視圖名(字段名)基本語法——DROPINDEX語句(刪除索引)DROPINDEX表名.索引名|視圖名.索引名19項(xiàng)目練習(xí)練習(xí)7.1:使用T-SQL語句對表cj中kcdh列創(chuàng)建聚集索引。練習(xí)7.2:使用企業(yè)管理器對cj表中的xh列創(chuàng)建非聚集索引。20項(xiàng)目7.2視圖任務(wù)1:使用企業(yè)管理器創(chuàng)建視圖任務(wù)2:使用T-SQL命令創(chuàng)建視圖任務(wù)3:使用企業(yè)管理器刪除視圖任務(wù)4:使用T-SQL命令刪除視圖項(xiàng)目練習(xí)21任務(wù)1:使用企業(yè)管理器創(chuàng)建視圖提出任務(wù)在對student數(shù)據(jù)庫管理的過程中,經(jīng)常要做這樣的操作:查看每個學(xué)生選修的各科的成績信息。查詢結(jié)果中要包括學(xué)生的學(xué)號、姓名、課程名稱和各科所對應(yīng)的成績。22任務(wù)1:使用企業(yè)管理器創(chuàng)建視圖分析任務(wù)方法一:每做一次這樣的操作,就書寫一次SELECT查詢代碼。

SELECTxs.xh,xs.xm,kc.kcm,cj.cjFROMxsINNERJOINcjONxs.xh=cj.xhINNERJOINkcONcj.kcdh=kc.kcdh方法二:創(chuàng)建視圖用于完成這一查詢過程。以后每次做這一操作時,只要調(diào)用該視圖即可。23任務(wù)1:使用企業(yè)管理器創(chuàng)建視圖完成任務(wù)本項(xiàng)目采用方法二來完成項(xiàng)目要求,且使用企業(yè)管理器創(chuàng)建視圖。打開【企業(yè)管理器】窗口,展開【student】數(shù)據(jù)庫,右擊【視圖】,選擇【新建視圖】命令。如圖所示。24在打開的新建視圖對話框有四個區(qū),從上到下分別是【表區(qū)】、【列區(qū)】、【SQLScript區(qū)】和【數(shù)據(jù)結(jié)果區(qū)】。在【表區(qū)】右擊鼠標(biāo),選擇【添加表】命令。如圖所示。

任務(wù)1:使用企業(yè)管理器創(chuàng)建視圖25在彈出的【添加表】對話框中選擇【表】選項(xiàng)卡,選擇表cj、kc和xs。然后單擊【添加】按鈕。如果不需要添加其他的表、視圖或函數(shù),單擊【關(guān)閉】按鈕。如圖所示。任務(wù)1:使用企業(yè)管理器創(chuàng)建視圖26在【列區(qū)】選擇視圖所需的列,指定列的別名、排序方式或準(zhǔn)則等。相應(yīng)的SELECT語句顯示在SQLScript區(qū)。此項(xiàng)目中,添加“xs.xh”,“xs.xm”,“kc.kcm”和“cj.cj”,如圖所示。

任務(wù)1:使用企業(yè)管理器創(chuàng)建視圖27單擊工具欄上的保存按鈕,在彈出的【另存為】對話框中輸入新建視圖名(如,xs_view),單擊【確定】按鈕即可完成了視圖的創(chuàng)建,如圖所示。任務(wù)1:使用企業(yè)管理器創(chuàng)建視圖28測試1:查看視圖xs_view對應(yīng)的所有數(shù)據(jù)。步驟1:在【企業(yè)管理器】的菜單欄,依次選擇【工具】|【SQL查詢分析器】,在彈出的【SQL查詢分析器】窗口輸入語句:“usestudentselect*fromxs_view”并執(zhí)行該語句,結(jié)果如圖所示。

任務(wù)1:使用企業(yè)管理器創(chuàng)建視圖29測試2:查看視圖xs_view對應(yīng)的部分?jǐn)?shù)據(jù)。步驟1:在【SQL查詢分析器】窗口輸入語句:“usestudentselectxm,cjfromxs_view”并執(zhí)行該語句,結(jié)果如圖所示。

任務(wù)1:使用企業(yè)管理器創(chuàng)建視圖30任務(wù)2:使用T-SQL命令創(chuàng)建視圖基本語法——createview語句(創(chuàng)建新視圖)createview視圖名asselect語句31任務(wù)2:使用T-SQL命令創(chuàng)建視圖提出任務(wù)使用T-SQL命令創(chuàng)建視圖cjmax_view,用于查看cj表中各門課的最高分。分析任務(wù)使用CREATEVIEW語句創(chuàng)建視圖cjmax_view32任務(wù)2:使用T-SQL命令創(chuàng)建視圖完成任務(wù)在【查詢分析器】中,輸入如下命令:USESTUDENTGOCREATEVIEWcjmax_viewASSELECTkcdh,MAX(cj)AS最高分FROMdbo.cjGROUPBYkcdhGO33任務(wù)2:使用T-SQL命令創(chuàng)建視圖在【企業(yè)管理器】窗口,右擊右側(cè)窗體,選擇【刷新】命令,則在右側(cè)窗體出現(xiàn)創(chuàng)建成功的視圖cjmax_view。如圖所示。34任務(wù)3:使用企業(yè)管理器刪除視圖提出任務(wù)使用企業(yè)管理器刪除操作1中創(chuàng)建的視圖xs_view。分析任務(wù)

使用企業(yè)管理器刪除視圖很簡單,只要找到該視圖,選擇刪除命令即可。35任務(wù)3:使用企業(yè)管理器刪除視圖完成任務(wù)在【企業(yè)管理器】中,展開【student】數(shù)據(jù)庫,單擊其中的數(shù)據(jù)庫對象【視圖】,在右側(cè)窗體中找到視圖xs_view;右擊該視圖,選擇【刪除】命令,在彈出的【除去對象】對話框,如圖所示,點(diǎn)擊【全部除去】按鈕。36任務(wù)4:使用T-SQL命令刪除視圖基本語法——DROPview語句(刪除視圖)DROPview視圖名37任務(wù)4:使用T-SQL命令刪除視圖提出任務(wù)使用T-SQL命令刪除視圖cjmax_view。分析任務(wù)使用DROPVIEW語句創(chuàng)建視圖cjmax_view38任務(wù)4:使用T-SQL命令刪除視圖完成任務(wù)在【查詢分析器】窗口,輸入如下命令:USESTUDENTDROPVIEWcjmax_view執(zhí)行該命令,則成功刪除試圖cjmax_view39項(xiàng)目練習(xí)

練習(xí)7.3:使用企業(yè)管理器創(chuàng)建一視圖cjmax_view,用于查看cj表中各門課的最高分,結(jié)果包括各科的代號和各科最高分。練習(xí)7.4:使用createview語句創(chuàng)建一視圖xsxx_view,通過該視圖僅查看xs表中的xh和xm兩列信息。

40項(xiàng)目總結(jié)

一個視圖是從一個特定的角度來查看數(shù)據(jù)庫中的數(shù)據(jù)。從數(shù)據(jù)庫系統(tǒng)內(nèi)部來看,一個視圖是由SELECT語句組成的查詢定義的虛擬表。從數(shù)據(jù)庫系統(tǒng)內(nèi)部來看,視圖是由一張或多張表中的數(shù)據(jù)組成的,從數(shù)據(jù)庫系統(tǒng)外部來看,視圖就如同一張表一樣。索引能提高查詢速度,但不合適

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論