lesson 5操作架構視圖和索引_第1頁
lesson 5操作架構視圖和索引_第2頁
lesson 5操作架構視圖和索引_第3頁
lesson 5操作架構視圖和索引_第4頁
lesson 5操作架構視圖和索引_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

主講:唐雅璇Email:Tel:QQ:2534775935操作架構、視圖和索引視圖視圖–視圖是通過定義查詢建立的虛擬表。與普通的數據表一樣,視圖由一組數據列、數據行構成。由于視圖返回的結果集,與數據表有相同的形式,因此可以像數據表一樣使用。視圖視圖的特點是一個虛表它是從一個或多個基本表中導出的表數據仍然存放在原來的數據表中,視圖只是個窗口,通過該窗口可以看到用戶所需要的數據當基本表中的數據發(fā)生變化時,視圖中查詢出來的數據也會相應改變視圖視圖的優(yōu)點視圖可以屏蔽數據的復雜性,簡化用戶對數據庫的操作視圖可以讓不同的用戶以不同的方式看到不同或者相同的數據集可以使用視圖重新組織數據視圖可以定制不同用戶對數據的訪問權限使用圖形界面創(chuàng)建視圖在SSMS中,連接到包含默認的數據庫服務器實例打開SSMS窗口,展開【學生成績管理系統(tǒng)】數據庫,右擊【視圖】節(jié)點,選擇【新建視圖】命令打開【添加表】對話框,選擇【學生信息】、【班級信息】和【輔導員信息】單擊【添加】按鈕,然后關閉【添加表】對話框在視圖窗口的【關系圖】窗格中,選擇視圖中查詢的列,在【條件】窗格中就相應地顯示了所選擇的列名單擊【執(zhí)行SQL】/!,在【顯示結果】窗格中顯示查詢出的結果集單擊保存,在彈出的【選擇名稱】窗口中輸入視圖名稱

“查詢信息_view”,確定使用CREATE

VIEW創(chuàng)建視圖具體語法結構參加課本P124創(chuàng)建簡單視圖語法格式CREATE

VIEW

view_nameASSELECT

<col_name1>,

<col_name2>……FROM

table_name舉例CREATE

VIEW

基本信息ASSELECT

學號,姓名,性別,出生日期,家庭住址FROM

學生信息創(chuàng)建帶where子句的視圖語法格式CREATE

VIEW

view_nameASSELECT

<col_name1>,

<col_name2>……FROM

table_nameWHERE

condition舉例CREATE

VIEW

Teacher_viewASSELECT教師編號,姓名,性別,年齡FROM教師信息WHERE

性別=‘男’基于多表創(chuàng)建視圖語法格式CREATE

VIEW

view_name(col_name1,

col_name2,……)ASSELECT

<col_name1>,

<col_name2>……FROM

table_name1,table_name2……WHERE

condition舉例CREATE

VIEW

任課信息_view(教師號,姓名,課程號,課程名)ASSELECT教師編號,姓名,課程編號,課程名稱FROM教師信息,課程信息WHERE教師信息.教師編號=課程信息.任課教師使用表連接視圖舉例CREATE

VIEW

成績表_view(學號,課程號,成績編號,分數)ASSELECT

學生信息.學號,課程信息.課程號,成績信息.成績編號,成績信息.分數FROM學生信息,課程信息,成績信息WHERE

學生信息.學號=成績信息.學生編號AND課程信息.課程編號=成績信息.課程編CREATE

VIEW

成績表_view(學號,課程號,分數)ASSELECT

S.學號,C.課程號,SC.分數FROM

學生信息S,課程信息C,成績信息SCWHERE

S.學號=SC.學生編號AND

C.課程編號=SC.課程編號更新視圖更新視圖更新視圖是指通過視圖進行數據的插入、修改和刪除操作更新視圖操作主要有插入數據修改數據刪除數據更新視圖——插入數據語法格式INSERT

INTO

table_name

(field1,field2……)VALUES

(values1,values2,……)舉例INSERT

INTO

基本信息VALUES

(‘2012121201’,’張三’,’男’,’1987-01-10’,’廈門’)SELECT

*FROM

基本信息WHERE

姓名=‘張三’更新視圖——更新數據語法格式UPDATA

table_nameSET

field1=‘new_value1’

field2=‘new_value2’WHERE

condition舉例UPDATA

基本信息SET

姓名='張小旺'性別='男'WHERE

學號='2005010101'更新視圖——刪除數據語法格式DELETE

FROM

table_nameWHERE

condition舉例DELETE

FROM

基本信息WHERE

學號='2005010101'查看視圖當創(chuàng)建完視圖后,如果需要查看有關視圖的定義文本,可以使用存儲過程sp_helptext語句進行查看舉例USE

學生成績管理系統(tǒng)GOEXEC

sp_helptext

任課信息_view修改視圖CREATE

VIEW

P.K. ALTER

VIEWCREATE

VIEW

成績表_view(學號,課程號,成績編號,分數)ASSELECT

S.學號,C.課程號,SC.成績編號,SC.分數

FROM

學生信息S,課程信息C,成績信息SCWHERE

S.學號=SC.學生編號AND

C.課程編號=SC.課程編號ALTER

VIEW

成績表_view(學號,課程號,分數)ASSELECT

S.學號,C.課程號,SC.分數FROM

學生信息S,課程信息C,成績信息SCWHERE

S.學號=SC.學生編號AND

C.課程編號=SC.課程編號刪除視圖語法格式DROP

VIEW

view_name舉例USE

學生成績管理系統(tǒng)GODROP

VIEW

基本信息索引漢語字典中的漢字按頁存放,一般都有漢語拼音目錄(索引)、偏旁部首目錄等我們可以根據拼音或偏旁部首,快速查找某個字詞Indexes

Use

Key

Values

to

Locate

Data(根據索引鍵查找定位數據行)Data

Pages(數據頁)…Index

Pages(索引頁)什么是索引索引SQL

Server中的數據也是按頁(

8KB

)存放索引:是SQLServer編排數據的內部方法。它為SQL

Server提供一種方法來編排查詢數據。索引頁:數據庫中存儲索引的數據頁;索引頁類似于漢語字(詞)典中按拼音或筆畫排序的目錄頁。索引的作用:通過使用索引,可以大大提高數據庫的檢索速度,改善數據庫性能索引索引索引是一個單獨的、物理的數據庫結構索引包含從表或視圖中一個或多個列生成的鍵,以及映射到指定數據的存儲位置的指針索引可以幫助用戶快速找到表或索引視圖中的特定信息索引的類型有聚集索引非聚集索引XML索引索引類型唯一索引:唯一索引不允許兩行具有相同的索引值主鍵索引:為表定義一個主鍵將自動創(chuàng)建主鍵索引,主鍵索引是唯一索引的特殊類型。主鍵索引要求主鍵中的每個值是唯一的,并且不能為空聚集索引(Clustered):表中各行的物理順序與鍵值的邏輯(索引)順序相同,每個表只能有一個非聚集索引(Non-clustered):非聚集索引指定表的邏輯順序。數據存儲在一個位置,索引存儲在另一個位置,索引中包含指向數據存儲位置的指針??梢杂卸鄠€,小于249個索引的類型—聚集索引聚集索引是值表中數據行的物理存儲順序和索引的存儲順序完全相同。聚集索引根據索引順序物理地重新排列了用戶插入到表中的數據,每個表只能創(chuàng)建一個聚集索引。聚集索引經常創(chuàng)建在表中經常被搜索到的列或按順序訪問的列上。在默認情況下,主鍵約束自動創(chuàng)建聚集索引。索引的類型—非聚集索引非聚集索引不改變表中數據列的物理存儲位置,數據與索引分開存儲,通過索引指向的地址與表中的數據發(fā)生關系。非聚集索引沒有改變表中物理行的位置,索引可以在以下情況下使用非聚集索引:如果某個字段的數據唯一性比較高如果查詢所得到的數據量比較少聚集索引P.K.非聚集索引索引的缺點創(chuàng)建和維護索引要耗費時間索引需要占物理空間當對表中的數據進行更新數據時,索引也要動態(tài)地維護,這樣就降低了數據的維護速度使用圖形界面創(chuàng)建索引1、在【對象資源管理器】中,展開【學生成績管理系統(tǒng)】|【表】|【學生信息】,右擊【索引】,選擇【新建索引】2、在【新建索引】的【常規(guī)】頁面,配置索引的名稱、選擇索引的類型、是否是唯一索引等3、單擊【添加】按鈕,打開【從“.dbo.學生信息”中選擇列】,在窗口中的【表列】列表中啟用【學號】復選框4、單擊【確定】按鈕,返回【新建索引】,最后單擊【確定】,【索引】節(jié)點下便生成了一個名“學號”的聚集索引,表示該索引創(chuàng)建成功創(chuàng)建索引語法格式唯一索引 聚集索引或非聚集索引CREATE

[UNIQUE]

[CLUSTERED|NONCLUSTERED]INDEX

index_nameON

table_name

(column_name…)[WITH

FILLFACTOR=x]填充因子(系數):指定一個0~100之間的值,表示索引頁填充的百分比UNIQUE表示唯一索引,可選CLUSTERED、NONCLUSTERED表示聚集索引還是非聚集索引,可選FILLFACTOR表示填充因子,指定一個0到100之間的值,該值指示索引頁填滿的空間所占的百分比創(chuàng)建索引—舉例舉例在【學生成績管理】系統(tǒng)數據庫中的【學生信息】表上創(chuàng)建一個非聚集索引USE

學生成績管理系統(tǒng)GOCREATE

UNIQUE

NONCLUSTERED

INDEX

index_姓名ON

學生信息(姓名)查看索引屬性當創(chuàng)建完索引之后,可以通過【索引屬性】查看索引的相關信息。右擊索引名稱,選擇【屬性】命令,打開【索引屬性】窗口該窗口中,可以查看所有的相關基本信息、索引碎片、索引統(tǒng)計等信息,還可以更改索引類型,添加或刪除索引列等使用圖形界面修改索引打開【索引屬性】對話框,打開【選項】頁,在該頁中可以選擇是否重新生成索引或者禁止索引,當打開【碎片】選項頁,可以選擇是否重新組織索引重新生成索引語法格式ALTER

INDEX

index_nameON

table_or_view_name

REBUILD要修改的索引名稱當前索引基于的表或者視圖名重新組織索引語法格式ALTER

INDEX

index_nameON

table_or_view_name

REORGANIZE禁止索引語法格式ALTER

INDEX

index_nameON

ta

溫馨提示

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

評論

0/150

提交評論