合理使用視圖_第1頁
合理使用視圖_第2頁
合理使用視圖_第3頁
合理使用視圖_第4頁
合理使用視圖_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第第11講講 數(shù)據(jù)庫的視圖管理數(shù)據(jù)庫的視圖管理數(shù)據(jù)庫技術數(shù)據(jù)庫技術- SQL Server 主講人主講人 占躍華占躍華信息工程學院信息工程學院教學任務發(fā)布教學任務發(fā)布任務背景描述:任務背景描述:通過SQL的select數(shù)據(jù)查詢命令,我們已經掌握了在“Exam”數(shù)據(jù)庫中根據(jù)用戶需求查詢數(shù)據(jù)的能力,我們可以感覺到有的查詢請求實現(xiàn)方法很簡單,但有些查詢請求實現(xiàn)起來可能困難重重。在很多企業(yè)級的數(shù)據(jù)庫中,數(shù)據(jù)往往存放在幾十個甚至更多的數(shù)據(jù)表中,面對這樣一個復雜的數(shù)據(jù)環(huán)境,軟件開發(fā)者可以通過視圖來簡化查詢、隱蔽數(shù)據(jù)庫的復雜性、為用戶集中提取數(shù)據(jù)、簡化數(shù)據(jù)庫用戶管理等等。工作任務之:工作任務之:1、了解視圖

2、2、使用視圖11.1 了解視圖了解視圖 教學案例教學案例1:請根據(jù)用戶數(shù)據(jù)需求,在“Exam”數(shù)據(jù)庫中進行視圖的創(chuàng)建。1、在“Exam”數(shù)據(jù)庫的管理過程中,我們經常需要根據(jù)學生學號或姓名,查詢有關這個學生考試科目的科目名稱、成績、所在系及已考試科目的總分等信息,為了簡化查詢操作,請在該數(shù)據(jù)庫中創(chuàng)建一個或多個相關的視圖(自己分析)。2、為了便于不同的系部管理本系學生的考試成績,請分別為5個不同的系建立各自的成績數(shù)據(jù)視圖。11.1 了解視圖了解視圖 教學案例教學案例1:請根據(jù)用戶數(shù)據(jù)需求,在“Exam”數(shù)據(jù)庫中進行視圖的創(chuàng)建。3、因為在我們的“網上考試系統(tǒng)”中,每個科目的題庫分別由不同的教師管理,

3、為了防止教師在進行題庫管理的過程中,因為種種原因導致題庫出錯造成題庫損失,請為每個教師建立各自的題庫視圖,以保護題庫數(shù)據(jù)安全。數(shù)據(jù)安全,是視圖數(shù)據(jù)安全,是視圖帶給數(shù)據(jù)庫的福利!帶給數(shù)據(jù)庫的福利!11.1 了解視圖了解視圖 知識點:知識點:視圖的創(chuàng)建Create view view_name(c1,c2,)with encryption 加密視圖As selectfrom wherewith check option 指出在視圖上所進行的修改都要符合查詢語句所指定的限制條件,這樣可以確保數(shù)據(jù)修改后仍可通過視圖看到修改的數(shù)據(jù)視圖的刪除Drop view 視圖名稱;11.1 了解視圖了解視圖 知識點

4、:知識點:1、視圖是從一個或多個數(shù)據(jù)庫的基本表或視圖中導出來的表。其結構和數(shù)據(jù)是建立在對表的查詢的基礎上的。視圖是一個虛擬表。數(shù)據(jù)庫中存放的只是視圖的定義,而不是數(shù)據(jù),因此對視圖數(shù)據(jù)的所有操作最終都是轉換為對基本表的操作。11.1 了解視圖了解視圖 知識點:知識點:2、視圖就是關系數(shù)據(jù)庫三級體系結構中所講的外模式,從而為數(shù)據(jù)庫系統(tǒng)帶來了以下優(yōu)點:視圖能夠簡化用戶的操作視圖機制可以使用戶以不同的方式看待同一數(shù)據(jù)視圖能夠對機密數(shù)據(jù)提供安全保護11.1 了解視圖了解視圖 配套案例配套案例1:請根據(jù)用戶數(shù)據(jù)需求,在“Library”數(shù)據(jù)庫中進行視圖的創(chuàng)建1、因圖書系統(tǒng)中“機械工業(yè)出版社”和“電子工業(yè)出

5、版社”的圖書量特別巨大,為方便管理這兩個出版社的圖書信息,請為這兩個出版社出版的全部書籍分別創(chuàng)建視圖。11.2 使用視圖使用視圖 教學案例教學案例2:請根據(jù)用戶數(shù)據(jù)需求,在“Exam”數(shù)據(jù)庫中進行視圖的管理與應用。1、通過以上創(chuàng)建的視圖,請查詢“張圣政”同學所選修的相關信息;并查詢學號為“200601010001”同學已選修課程的總成績與平均成績。提問:提問:如果沒有以上視圖,要想完成任務2的查詢要求,我們可以怎么處理?對比兩種實現(xiàn)任務的過程,看看哪種方法更加簡單。這說明了視圖管理的什么特點?11.2 使用視圖使用視圖 教學案例教學案例2:請根據(jù)用戶數(shù)據(jù)需求,在“Exam”數(shù)據(jù)庫中進行視圖的管

6、理與應用。2、通過上面對視圖的查詢,“張圣政”發(fā)現(xiàn)自己的姓名有錯誤,應該是“張勝政”,我們是否可以通過視圖來修改該學生的姓名?提問:提問:如果可以,這又說明了什么問題?11.2 管理視圖管理視圖知識點:知識點:使用視圖的注意事項視圖中查詢select語句的限制:1.定義視圖的用戶必須對所參照的表或視圖有查詢權限,即可執(zhí)行select語句;2.不能使用compute或compute by 子句;3.不能使用order by 子句;4.不能使用into子句;5.不能在臨時表或表變量上創(chuàng)建視圖。關于compute或compute by子句應用,請課外上網查閱相關資料自主詳細學習11.2 管理視圖管理

7、視圖知識點:知識點:其他注意事項:1.只能在當前數(shù)據(jù)庫中創(chuàng)建視圖;2.視圖的命名必須遵循標識符命名規(guī)則,不可與表同名;3.如果視圖中某一列是函數(shù)、數(shù)學表達式、常量或來自多個表的列名同名,則必須為列定義名稱;4.當視圖引用的基表或視圖被刪除,該視圖也不能再被使用;5.不能在視圖上創(chuàng)建全文索引,不能在規(guī)則、默認的定義中引用視圖;6.一個視圖最多可以引用1024個列;7.視圖最多可以嵌套32層。11.2 管理視圖管理視圖配套案例配套案例2 :請根據(jù)用戶數(shù)據(jù)需求,在“Library”數(shù)據(jù)庫中進行視圖的管理與應用在應用過程中,管理員發(fā)現(xiàn)“機械工業(yè)出版社”的JAVA程序設計作者姓名有錯誤,不是“張明”而應

8、該是“張民”,我們是否可以通過視圖來修正該作者姓名?小小 結結知識點:知識點:視圖分為簡單視圖和復雜視圖: 簡單視圖只從單表里獲取數(shù)據(jù);復雜視圖從多表簡單視圖不包含函數(shù)和數(shù)據(jù)組;復雜視圖包含簡單視圖可以實現(xiàn)DML操作;復雜視圖不可以小小 結結知識點:知識點:視圖的原理視圖就是用戶查看數(shù)據(jù)表中數(shù)據(jù)的一種方式,一個視圖就是一個虛擬表,是用SQL語句構造而不是用數(shù)據(jù)構造的。視圖看起來像一個表,而且它的操作也類似表,但它并不是表,本身并不存儲任何數(shù)據(jù)。所以對視圖實施的查詢、修改、刪除等操作,實際上最終都反映在相應的基本表中。小小 結結知識點:知識點:使用視圖有以下幾個優(yōu)點:利于數(shù)據(jù)保密。因為視圖可以有

9、選擇性的選取數(shù)據(jù)庫里的一部分。對于不同的用戶定義不同的視圖,使用戶只能看到與自己有關的數(shù)據(jù);簡化查詢操作。為復雜的查詢建立一個視圖,用戶不必鍵入復雜的查詢語句,只需針對此視圖做簡單的查詢即可;保證數(shù)據(jù)的邏輯獨立性。維護數(shù)據(jù)的獨立性,視圖可從多個表檢索數(shù)據(jù)。小小 結結知識點:知識點:視圖的缺點主要表現(xiàn)在其對數(shù)據(jù)修改的限制上,因為對于復雜的或存在嵌套關系的視圖,修改操作可能由于所有權鏈的破壞而無法進行,所以視圖的主要用途在于數(shù)據(jù)查詢。更新的限制條件為:1、在一個SQL Server視圖中,若采用Group By子句,對視圖中的內容進行了匯總。則用戶就不能夠對這張視圖進行更新。這主要是因為采用Group By子句對查詢結果進行匯總在后,視圖中就會丟失這條紀錄的物理存儲位置;小小 結結知識點:知識點:視圖的缺點2、不能夠使用Distinct關鍵字,這個關鍵字的用途就是去除重復的紀錄, 因為視圖中看起來只有一條紀錄,而在基礎表中可能

溫馨提示

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

評論

0/150

提交評論