MySQL數(shù)據(jù)庫原理與應(yīng)用(微課版)ch10視圖_第1頁
MySQL數(shù)據(jù)庫原理與應(yīng)用(微課版)ch10視圖_第2頁
MySQL數(shù)據(jù)庫原理與應(yīng)用(微課版)ch10視圖_第3頁
MySQL數(shù)據(jù)庫原理與應(yīng)用(微課版)ch10視圖_第4頁
MySQL數(shù)據(jù)庫原理與應(yīng)用(微課版)ch10視圖_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第10章

視圖本章概述數(shù)據(jù)庫中的視圖是一個虛擬表。同真實的表一樣,視圖包含一系列帶有名稱的行和列數(shù)據(jù)。行和列數(shù)據(jù)來自于由定義視圖查詢所引用的表,并且在引用視圖時動態(tài)生成。本章將結(jié)合實例來介紹視圖的含義、視圖的作用、創(chuàng)建視圖、查看視圖、修改視圖、更新視圖和刪除視圖等內(nèi)容。本章學(xué)習(xí)目標(biāo)了解視圖的含義和作用;掌握創(chuàng)建視圖的方法,包括在單表上創(chuàng)建視圖和在多表上創(chuàng)建視圖;熟悉如何查看視圖,包括通過DESCRIBE和通過SHOWTABLESTATUS查看視圖基本信息,通過SHOWCREATEVIEW和在views表中查看視圖的詳細(xì)信息;掌握修改視圖的方法,包括通過CREATEORRELPLACEVIEW、ALTER語句修改視圖;掌握更新視圖的方法,包括INSERT、UPDATE和DELETE三種更新方式;掌握刪除視圖的方法,主要通過DROPVIEW語句實現(xiàn);掌握綜合案例中視圖應(yīng)用的方法和技巧。目錄01020304查看視圖創(chuàng)建視圖修改視圖視圖概述05更新視圖06刪除視圖07視圖應(yīng)用本章小結(jié)08目錄01視圖概述020304查看視圖創(chuàng)建視圖修改視圖05更新視圖06刪除視圖07視圖應(yīng)用本章小結(jié)08視圖概述視圖是從一個或者多個表中導(dǎo)出的,視圖的行為與表非常相似,但視圖是一個虛擬表。在視圖中,用戶可以使用SELECT語句查詢數(shù)據(jù),以及使用INSERT、UPDATE和DELETE語句修改記錄。從MySQL5.0開始可以使用視圖,視圖可以使用戶操作方便,而且可以保障數(shù)據(jù)庫系統(tǒng)的安全。與直接從數(shù)據(jù)表中讀取相比,視圖有以下優(yōu)點:簡單化安全性邏輯數(shù)據(jù)獨立性。目錄02創(chuàng)建視圖01視圖概述0304查看視圖修改視圖05更新視圖06刪除視圖07視圖應(yīng)用本章小結(jié)08創(chuàng)建視圖視圖中包含SELECT查詢的結(jié)果,因此視圖的創(chuàng)建基于SELECT語句和已存在的數(shù)據(jù)表,視圖可以建立在一張表上,也可以建立在多張表上。創(chuàng)建視圖使用CREATEVIEW語句,基本語法格式如下:CREATE[ORREPLACE][ALGORITHM=(UNDEFINED|MERGE|TEMPTABLE)]VIEWview_name[(column_list]ASSELECTstatement[WITH[CASCADED|LOCAL]CHECKOPTION]其中,CREATE表示創(chuàng)建新的視圖;REPLACE表示替換已經(jīng)創(chuàng)建的視圖;ALGORITHM表示視圖選擇的算法;view_name為視圖的名稱,column_list為屬性列;SELECT_statement表示SELECT語句;WITH[CASCADED|LOCAL]CHECKOPTION參數(shù)表示視圖在更新時保證在視圖的權(quán)限范圍之內(nèi)。創(chuàng)建視圖MySQL可以在單個數(shù)據(jù)表上創(chuàng)建視圖。【例10-1】在Z表上創(chuàng)建一個名為view_Z的視圖,代碼如下:(1)首先創(chuàng)建基本表并插入數(shù)據(jù),語句如下:CREATETABLEZ(quantityINT,priceFLOAT);INSERTINTOZVALUES(3,50);運行結(jié)果如圖所示。創(chuàng)建視圖MySQL可以在單個數(shù)據(jù)表上創(chuàng)建視圖?!纠?0-1】在Z表上創(chuàng)建一個名為view_Z的視圖,代碼如下:(1)首先創(chuàng)建基本表并插入數(shù)據(jù),語句如下:CREATETABLEZ(quantityINT,priceFLOAT);INSERTINTOZVALUES(3,50);運行結(jié)果如圖1所示。(2)創(chuàng)建視圖,然后查詢視圖,語句如下:CREATEVIEWview_ZASSELECTquantity,price,quantity*priceFROMZ;SELECT*FROMview_Z;執(zhí)行結(jié)果如圖2所示。圖2圖1創(chuàng)建視圖MySQL中也可以在兩個或者兩個以上的表上創(chuàng)建視圖,可以使用CREATEVIEW語句實現(xiàn)。【例10-3】在表tb_student和表tb_student_info上創(chuàng)建視圖stu_glass。創(chuàng)建視圖student_view,語句如下:CREATEVIEWstudent_view(s_id,s_name,glass)ASSELECTtb_student.s_id,tb_student.s_name,tb_student_info.glassFROMtb_student,tb_student_infoWHEREtb_student.s_id=tb_student_info.s_id;SELECT*FROMstudent_view;目錄03查看視圖0102創(chuàng)建視圖視圖概述04修改視圖05更新視圖06刪除視圖07視圖應(yīng)用本章小結(jié)08查看視圖查看視圖是查看數(shù)據(jù)庫中已存在的視圖的定義。查看視圖必須要有SHOWVIEW的權(quán)限,MySQL數(shù)據(jù)庫下的user表中保存著這個信息。查看視圖的方法包括:DESCRIBE、SHOWTABLESTATUS和SHOWCREATEVIEW。DESCRIBE視圖名;SHOWTABLESTATUSLIKE'視圖名';SHOWCREATEVIEW視圖名;SELECT*FROMinformation_schema.views\G;目錄04修改視圖010203查看視圖創(chuàng)建視圖視圖概述05更新視圖06刪除視圖07視圖應(yīng)用本章小結(jié)08修改視圖使用CREATEORREPLACEVIEW語句修改視圖:CREATE[ORREPLACE][ALGORITHM={UNDEFINED|MERGE|TEMPTABLE}VIEWview_name[(column_List)]ASSELECT_statement[WITH[CASCADED|LOCAL]CHECKOPTION]ALTER語句是MySQL提供的另一種修改視圖的方法,語法如下:ALTER[ALGORITHM=(UNDEFINED|MERGE|TEMPTABLE)]VIEWview_name[(columnlist)]ASSELECT_statement[WITH[CASCADED|LOCAL]CHECKOPTION]目錄05更新視圖06刪除視圖07視圖應(yīng)用本章小結(jié)0801020304查看視圖創(chuàng)建視圖修改視圖視圖概述更新視圖針對視圖對象進(jìn)行更新、插入、刪除,可以更新視圖內(nèi)容:UPDATEview_ZSETquantity=5;INSERTINTOtVALUES(2,4);DELETEFROMview_Z2WHEREprice=8;目錄06刪除視圖07視圖應(yīng)用本章小結(jié)0801020304查看視圖創(chuàng)建視圖修改視圖視圖概述05更新視圖刪除視圖當(dāng)視圖不再需要時,可以將其刪除,刪除一個或多個視圖可以使用DROPVIEW語句,語法格式如下:DROPVIEW[IFEXISTS]

view_name[,view_name]…

[RESTRICT|CASCADE]其中,view_name是要刪除的視圖名稱,可以添加多個需要刪除的視圖名稱,各個名稱之間使用逗號分隔開。刪除視圖必須擁有DROP權(quán)限。【例10-13】刪除student_view視圖,代碼如下:DROPVIEWIFEXISTSstudent_view;

執(zhí)行結(jié)果如圖所示。目錄07視圖應(yīng)用本章小結(jié)0801020304查看視圖創(chuàng)建視圖修改視圖視圖概述05更新視圖06刪除視圖視圖應(yīng)用本節(jié)通過示例來綜合練習(xí)視圖的創(chuàng)建、查詢、更新和刪除操作。基于圖書信息系統(tǒng),建立關(guān)于系統(tǒng)管理員、圖書信息、借閱記錄和歸還記錄的視圖。目錄本章小結(jié)0801020304查看視圖創(chuàng)建視圖修改視圖視圖概述05更新視圖06刪除視圖07視圖應(yīng)用本章小結(jié)數(shù)據(jù)庫中的視圖是一個虛擬表,也包含了一系列帶有名稱的行和列數(shù)據(jù)。行和列數(shù)據(jù)均來自于由視圖所引用的表,并且在引用視圖時動態(tài)抽取數(shù)據(jù)表中的數(shù)據(jù)。本章通過理論與實例相結(jié)合,介紹了視圖的含義、視圖的作用、創(chuàng)建視圖、查看視圖、修改視圖、更新視圖和刪除視圖等內(nèi)容。在建立視圖時,可以基于單個數(shù)據(jù)表創(chuàng)建視圖,也可以基于多數(shù)據(jù)表創(chuà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

提交評論