SQL數(shù)據(jù)庫9.ppt

SQL數(shù)據(jù)庫9.ppt

ID:48676749

大?。?11.00 KB

頁數(shù):44頁

時間:2020-01-19

SQL數(shù)據(jù)庫9.ppt_第1頁
SQL數(shù)據(jù)庫9.ppt_第2頁
SQL數(shù)據(jù)庫9.ppt_第3頁
SQL數(shù)據(jù)庫9.ppt_第4頁
SQL數(shù)據(jù)庫9.ppt_第5頁
資源描述:

《SQL數(shù)據(jù)庫9.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、數(shù)據(jù)庫的基本表是按照數(shù)據(jù)庫設(shè)計人員的觀點設(shè)計的,并不一定符合用戶的需求。SQLServer2005可以根據(jù)用戶需求重新定義表的數(shù)據(jù)結(jié)構(gòu),這種數(shù)據(jù)結(jié)構(gòu)就是視圖。在數(shù)據(jù)庫系統(tǒng)中,為了迅速地從龐大的數(shù)據(jù)庫中找到所需要的數(shù)據(jù),SQLServer2005提供了類似書的目錄作用的索引技術(shù)。通過對數(shù)據(jù)庫中表設(shè)置索引,可以大大加快數(shù)據(jù)的檢索速度。SQLServer2005還提供了一種稱為游標(biāo)的機制,來處理數(shù)據(jù)。本章主要介紹SQLServer2005數(shù)據(jù)庫系統(tǒng)視圖的創(chuàng)建以及使用,索引類型及創(chuàng)建、使用,游標(biāo)的創(chuàng)建以及使用。第9章視圖、索引和游標(biāo)9.

2、1視圖9.2索引9.3游標(biāo)第9章視圖、索引和游標(biāo)9.1.1視圖概述視圖是從一個或多個表或視圖中導(dǎo)出的表,其結(jié)構(gòu)和數(shù)據(jù)是建立在對表的查詢基礎(chǔ)上的。視圖不是真實存在的基礎(chǔ)表而是一張?zhí)摫?,視圖所對應(yīng)的數(shù)據(jù)并不實際地以視圖結(jié)構(gòu)存儲在數(shù)據(jù)庫中,而是存儲在視圖所引用的表中。1.視圖的優(yōu)點使用視圖有很多優(yōu)點,主要表現(xiàn)在:1)為用戶集中數(shù)據(jù),簡化用戶的數(shù)據(jù)查詢和處理。使得分散在多個表中的數(shù)據(jù),通過視圖定義在一起。2)簡化操作,屏蔽了數(shù)據(jù)庫的復(fù)雜性。3)重新定制數(shù)據(jù),使得數(shù)據(jù)便于共享。4)合并分割數(shù)據(jù),有利于數(shù)據(jù)輸出到應(yīng)用程序中。5)簡化了用戶權(quán)

3、限的管理,增加了安全性。9.1視圖2.視圖的使用范圍視圖通常用來集中、簡化和自定義每個用戶對數(shù)據(jù)庫的不同認(rèn)識。通常在以下情況下使用視圖:著重于特定數(shù)據(jù)。簡化數(shù)據(jù)操作。3)自定義數(shù)據(jù)。4)數(shù)據(jù)的導(dǎo)入與導(dǎo)出。5)跨服務(wù)器組合分區(qū)數(shù)據(jù)庫9.1視圖9.1.2視圖的類型在SQLServer2005中,視圖可以分為標(biāo)準(zhǔn)視圖、索引視圖和分區(qū)視圖。標(biāo)準(zhǔn)視圖組合了一個或多個表中的數(shù)據(jù),用戶可以使用標(biāo)準(zhǔn)視圖對數(shù)據(jù)庫進行查詢、修改、刪除等基本操作。索引視圖是被具體化了的視圖,即它已經(jīng)過計算并存儲??梢詾橐晥D創(chuàng)建索引,即對視圖創(chuàng)建一個惟一的聚集索引。索

4、引視圖可以顯著提高某些類型查詢的性能。索引視圖尤其適于聚合許多行的查詢。但它們不太適于經(jīng)常更新的基本數(shù)據(jù)集。分區(qū)視圖在一臺或多臺服務(wù)器間水平連接一組成員表中的分區(qū)數(shù)據(jù)。這樣,數(shù)據(jù)看上去如同來自于一個表。聯(lián)接同一個SQLServer實例中的成員表的視圖是一個本地分區(qū)視圖。9.1視圖9.1.3創(chuàng)建視圖在創(chuàng)建視圖前應(yīng)考慮如下準(zhǔn)則:1)只能在當(dāng)前數(shù)據(jù)庫中創(chuàng)建視圖。2)視圖名稱必須遵循標(biāo)識符的規(guī)則,且對每個架構(gòu)都必須惟一。3)用戶可以對其他視圖創(chuàng)建視圖。5)不能將AFTER觸發(fā)器與視圖相關(guān)聯(lián),只有INSTEADOF觸發(fā)器可以與之相關(guān)聯(lián)。6

5、)定義視圖的查詢不能包含COMPUTE子句、COMPUTEBY子句或INTO關(guān)鍵字。7)定義視圖的查詢不能包含ORDERBY子句,除非在SELECT語句的選擇列表中還有一個TOP子句。8)定義視圖的查詢不能包含指定查詢提示的OPTION子句。9)定義視圖的查詢不能包含TABLESAMPLE子句。9.1視圖10)不能為視圖定義全文索引定義。11)不能創(chuàng)建臨時視圖,也不能對臨時表創(chuàng)建視圖。12)不能刪除參與到使用SCHEMABINDING子句創(chuàng)建的視圖中的視圖、表或函數(shù),除非該視圖已被刪除或更改而不再具有架構(gòu)綁定。另外,如果對參與具

6、有架構(gòu)綁定的視圖的表執(zhí)行ALTERTABLE語句,而這些語句又會影響該視圖的定義,則這些語句將會失敗。13)下列情況下必須指定視圖中每列的名稱:①視圖中的任何列都是從算術(shù)表達式、內(nèi)置函數(shù)或常量派生而來。②視圖中有兩列或多列原應(yīng)具有相同名稱。③希望為視圖中的列指定一個與其源列不同的名稱。9.1視圖在SQLServer2005中創(chuàng)建標(biāo)準(zhǔn)視圖主要有兩種方式:一種方式是在SQLServerManagementStudio中使用向?qū)?chuàng)建視圖,另一種方式是通過在查詢窗口中執(zhí)行T-SQL語句創(chuàng)建視圖。T-SQL提供了視圖創(chuàng)建語句CREATEV

7、IEW。其語法格式如下:CREATEVIEW[schema_name.]view_name[(column[,...n])][WITH[,...n]]ASselect_statement[;][WITHCHECKOPTION]9.1視圖組成視圖的屬性列名全部省略或全部指定,沒有第3種選擇。省略:視圖屬性列由子查詢中SELECT目標(biāo)列中的諸字段組成明確指定視圖的所有列名:(1)某個SELECT目標(biāo)列是集函數(shù)或列表達式(2)多表連接時選出了幾個同名列作為視圖的字段(注:在SQLServer2005中可

8、省略)(3)需要在視圖中為某個列啟用新的更合適的名字【例1】創(chuàng)建學(xué)生_課程_分?jǐn)?shù)視圖,包括計算機系的學(xué)生的學(xué)號、姓名,和他們選修的課程名、分?jǐn)?shù)。CREATEVIEWstu_scASSELECTStudent.sno,Cname,GradeFROMStudent,

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。