數(shù)據(jù)庫原理與應用快速入門 課件 6.1 使用視圖_第1頁
數(shù)據(jù)庫原理與應用快速入門 課件 6.1 使用視圖_第2頁
數(shù)據(jù)庫原理與應用快速入門 課件 6.1 使用視圖_第3頁
數(shù)據(jù)庫原理與應用快速入門 課件 6.1 使用視圖_第4頁
數(shù)據(jù)庫原理與應用快速入門 課件 6.1 使用視圖_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

數(shù)據(jù)庫原理與應用快速入門6.1使用視圖6.2使用存儲過程6.3使用觸發(fā)器第6章

使用其他數(shù)據(jù)庫對象6.4使用MySQL系統(tǒng)函數(shù)6.1.1理解視圖的概念6.1.2定義視圖6.1.3查詢視圖6.1使用視圖6.1.4更新視圖6.1.5刪除視圖6.1.1理解視圖的概念所謂的視圖,簡單地說就是一段以特定名稱保存起來SELECT查詢。視圖從表面上看,結構和表結構類似,而實際上,視圖是一個從基本表中導出的虛擬表?;颈硎菍崒嵲谠诖嬖诘模晥D的虛擬的,它存放的只是一些代碼。當用戶要查看視圖時,其實是先運行了這些代碼來提取基本表內的信息,通過視圖反映出來,而數(shù)據(jù)仍保存在基本表中。所以,當基本表中的數(shù)據(jù)發(fā)生變化,從視圖中查詢出的數(shù)據(jù)也就隨之改變了。視圖就像一個窗口,透過它可以看到表中自己感興趣的數(shù)據(jù)及其變化。6.1.1理解視圖的概念對視圖的操作和對表的操作方式相同,包括查詢視圖、插入數(shù)據(jù)、修改數(shù)據(jù)和刪除數(shù)據(jù)。通過視圖插入、修改和刪除數(shù)據(jù),因數(shù)據(jù)最終是保存到基本表里的,所以操作最終影響的是表中的數(shù)據(jù)。6.1.1理解視圖的概念視圖的作用一般表現(xiàn)為兩個方面:一是整合數(shù)據(jù),按需要呈現(xiàn)數(shù)據(jù)。二是輔助權限設置,實現(xiàn)數(shù)據(jù)安全。6.1.2定義視圖SQL中使用CREATEVIEW命令定義視圖,其一般格式為:CREATEVIEW<視圖名>[(<列名1>[,<列名2>])…]

AS<子查詢>

[WITHCHECKOPTION]6.1.2定義視圖需要注意,在以下三種情況下,定義視圖時必須明確指定組成視圖的所有列名:1、某個目標列不是單純的屬性名,而是函數(shù)或列表達式;2、多表連接時選出了幾個同名列作為視圖的字段;3、需要在視圖中為某個列啟用新的更合適的名字。6.1.2定義視圖數(shù)據(jù)庫系統(tǒng)執(zhí)行CREATEVIEW語句的結果,只是把視圖的定義存入系統(tǒng)數(shù)據(jù)字典,并不執(zhí)行其中的SELECT語句。只是在對視圖進行查詢時,才按視圖的定義從基本表中將數(shù)據(jù)查出。6.1.2定義視圖【例6-1】建立計算機應用班的學生的視圖,視圖名為“csstu1”。6.1.2定義視圖【例6-2】建立計算機應用班的學生的視圖,視圖名為“csstu2”,并要求進行修改和插入操作時仍需要保證該視圖只有計算機應用班的學生。6.1.2定義視圖【例6-3】建立計算機應用班中選修了001號課程的學生的視圖,視圖命名為“cs001”,視圖的列包括學號,姓名,課程號和成績。6.1.2定義視圖【例6-4】建立計算機應用班中選修了001號課程且成績在90分以上的學生的視圖,視圖命名為“cs00190”,視圖的字段包括學號,姓名,課程號和成績。6.1.2定義視圖【例6-5】建立一個反映學生年齡的視圖,視圖命名為“stuage”,視圖的列包括學號,姓名和年齡。6.1.2定義視圖【例6-6】建立為一個視圖,統(tǒng)計每個學生課程的平均成績,視圖命名為“stuavgscore”,視圖的字段包括學號和平均成績。6.1.3查詢視圖對視圖的查詢其實就是對基本表的查詢。6.1.3查詢視圖【例6-7】在視圖“csstu1”的中找出電話號碼以“22”開頭的學生,查詢結果包括學號,姓名和電話。6.1.3查詢視圖【例6-8】查詢計算機應用班中選修了002號課程的學生,查詢結果包括學號,姓名和課程號。6.1.3查詢視圖【例6-9】在視圖“stuavgscore”中查詢平均成績在85分以上的學生學號和平均成績。6.1.4更新視圖更新視圖是指通過視圖來插入、刪除和修改數(shù)據(jù)。因為視圖是一個虛擬表,所以對視圖的更新,最終要轉換為對基本表的更新。6.1.4更新視圖【例6-10】將視圖“csstu1”中學號為“210102002”的學生姓名改為“歐陽毅”。6.1.4更新視圖【例6-11】向視圖“csstu2”中插入一個新的學生記錄(stuId:210102031;stuName:趙小新;class:計算機應用;sex:男;birth:2003-11-16;telNo:2779812;Email:Zxxing@21cn.Com;comment:Null)。6.1.4更新視圖【例6-12】刪除視圖“csstu2”中學號為“210102031”的記錄。6.1.4更新視圖總的來說,以下情況下視圖不可更新:1、若視圖是由兩具以上基本表導出的,則此視圖不允許更新。2、若視圖的字段來自字段表達式或常數(shù),則不允許對此視圖執(zhí)行INSERT和UPDATE操作,但允許執(zhí)行DELETE操作。3、若視圖的字段來自集函數(shù),則此視圖不允許更新。4、若視圖定義含有GROUPBY子句,則此視圖不允許更新。6.1.4更新視圖總的來說,以下情況下視圖不可更新:5、若視圖定義含有DISTINCT短語,則此視圖不允許更新。6、若視圖定義中有嵌套查詢,并且內層查詢的FROM子句中涉及的表也是導出該視圖的基本表,則此視圖不允許更新。7、一個不允許更新的視圖上定義的視圖也不允許更新。6.1.5刪除視圖有時候,某些視圖在完成一定業(yè)

溫馨提示

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

最新文檔

評論

0/150

提交評論