版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)庫(kù)應(yīng)用技術(shù)SQLServer2012主編:屈武江霍艷飛張健新世紀(jì)應(yīng)用型高等教育計(jì)算機(jī)類課程規(guī)劃教材SQLSERVER2012SHUJUKUYINGYONGJISHU第6章視圖和索引的使用6.1視圖的使用1.視圖的概念數(shù)據(jù)庫(kù)中只存放視圖的定義,視圖中不存放數(shù)據(jù)。數(shù)據(jù)來(lái)源于基本表,是導(dǎo)出表、邏輯表,視圖是數(shù)據(jù)庫(kù)中局部數(shù)據(jù)的展示,當(dāng)基本表中的數(shù)據(jù)發(fā)生變化時(shí),從視圖中查詢出來(lái)的數(shù)據(jù)也隨之改變。視圖的數(shù)據(jù)來(lái)源可以由以下任意一項(xiàng)組成:(1)一個(gè)基本表的任意子集。(2)兩個(gè)或者兩個(gè)以上基本表的任意子集(包含計(jì)算列)。(3)另一個(gè)視圖的子集。6.1.1視圖概述6.1視圖的使用2.視圖的作用(1)視圖可以滿足不同用戶的需求,使用戶可以從多角度看待同一數(shù)據(jù)。(2)視圖可以簡(jiǎn)化用戶的數(shù)據(jù)讀取操作??梢詫⒔?jīng)常用到的復(fù)雜的查詢語(yǔ)句定義為視圖,簡(jiǎn)化查詢操作。(3)視圖保證了基本表數(shù)據(jù)和應(yīng)用程序的邏輯獨(dú)立性。(4)視圖可以對(duì)數(shù)據(jù)提供安全保護(hù)。6.1.1視圖概述6.1視圖的使用3.視圖的優(yōu)點(diǎn)6.1.1視圖概述(1)為用戶集中數(shù)據(jù)(2)掩蓋數(shù)據(jù)庫(kù)復(fù)雜性(3)簡(jiǎn)化用戶權(quán)限的管理6.1視圖的使用4.創(chuàng)建視圖的注意事項(xiàng)(1)只能在當(dāng)前數(shù)據(jù)庫(kù)中創(chuàng)建視圖。(2)可基于其他視圖創(chuàng)建新視圖,嵌套不能超過(guò)32層。(3)不能創(chuàng)建臨時(shí)視圖,也不能基于臨時(shí)表創(chuàng)建視圖。(4)視圖最多可包含1024列。(5)不能在定義視圖的查詢中包含COMPUTER、COMPUTERBY子句或INTO關(guān)鍵字。(6)除非指定了TOP或FORXML,否則,ORDERBY子句在視圖、內(nèi)聯(lián)函數(shù)、派生表、子查詢和公用表表達(dá)式中無(wú)效。(7)以下情況必須指定列名:①視圖的任何一列是從算術(shù)表達(dá)式、內(nèi)置函數(shù)或常量派生的。②進(jìn)行聯(lián)接的表中有同名的列。6.1.1視圖概述6.1視圖的使用5.不能通過(guò)視圖更新數(shù)據(jù)的情況當(dāng)更新視圖中的數(shù)據(jù)時(shí),實(shí)際上是對(duì)基本表中的數(shù)據(jù)進(jìn)行更新。然而,某些視圖是不能更新數(shù)據(jù)的,這些視圖有如下特征:(1)有集合操作符的視圖(UNION并、INTERSECT交、EXCEPT差)。(2)有分組子句的視圖。(3)有集合函數(shù)的視圖。(4)基于多表連接生成的視圖。6.1.1視圖概述6.1視圖的使用1.使用SQLServerManagementStudio管理工具創(chuàng)建視圖2.使用Transact-SQL語(yǔ)句創(chuàng)建視圖使用Transact-SQL語(yǔ)句創(chuàng)建視圖的語(yǔ)法格式為:6.1.2創(chuàng)建視圖CREATEVIEW<視圖名>[(<列名>[,<列名>]…)][WITHENCRYPTION]AS<SELECT語(yǔ)句>[WITHCHECKOPTION]6.1視圖的使用視圖的修改也有兩種途徑:一種是使用SSMS管理工具修改;另一種是在查詢編輯器中使用Transact-SQL語(yǔ)句修改。1.使用SQLServerManagementStudio管理工具修改視圖2.使用Transact-SQL語(yǔ)句修改視圖6.1.3修改視圖ALTERVIEW<視圖名>[(<列名>[,<列名>]…)][WITHENCRYPTION]AS<SELECT語(yǔ)句>[WITHCHECKOPTION]6.1視圖的使用對(duì)于不同的數(shù)據(jù)庫(kù)用戶,只關(guān)心與其有關(guān)的數(shù)據(jù),其他無(wú)關(guān)的數(shù)據(jù)沒(méi)有意義??梢愿鶕?jù)實(shí)際情況,專門(mén)為這些用戶將需要的數(shù)據(jù)提取出來(lái),放入視圖中,以供使用。作為學(xué)生,成績(jī)是他們所關(guān)心的數(shù)據(jù),因此可以將學(xué)生的成績(jī)信息提取出來(lái)放入視圖中,以供學(xué)生查詢,在視圖上檢索數(shù)據(jù),簡(jiǎn)化了查詢語(yǔ)句,提高查詢效率。6.1.4使用視圖6.1視圖的使用刪除視圖的兩種途徑:一種是使用SSMS管理工具刪除視圖;另一種是在查詢編輯器中使用Transact-SQL語(yǔ)句刪除視圖。1.使用SQLServerManagementStudio管理工具刪除視圖2.使用Transact-SQL語(yǔ)句刪除視圖6.1.5刪除視圖DROPVIEW<視圖名>[,…]6.2
索引的使用1.索引的概念數(shù)據(jù)庫(kù)中的索引類似于一本書(shū)的目錄,在一本書(shū)中使用目錄可以快速找到想要的信息,而不需要讀完全書(shū)。在數(shù)據(jù)庫(kù)中,使用索引可以快速檢索到表中的數(shù)據(jù),而不必掃描整個(gè)表。索引是一種與表或視圖關(guān)聯(lián)的獨(dú)立的、物理的數(shù)據(jù)庫(kù)結(jié)構(gòu),可以加快從表或視圖中檢索數(shù)據(jù)的速度。6.2.1索引概述6.2
索引的使用2.索引的作用索引就是為了提高數(shù)據(jù)庫(kù)從表或視圖中查詢數(shù)據(jù)的速度,改善數(shù)據(jù)庫(kù)性能。而存放索引的空間,在數(shù)據(jù)庫(kù)中稱為索引頁(yè)。索引頁(yè)是數(shù)據(jù)庫(kù)中存放包括鍵值以及指向數(shù)據(jù)行位置的指針。如果一個(gè)表沒(méi)有創(chuàng)建索引,則數(shù)據(jù)行不按任何特定的順序存儲(chǔ),這種結(jié)構(gòu)稱為堆集。而創(chuàng)建索引可以大大提高系統(tǒng)的性能。(1)通過(guò)創(chuàng)建唯一性索引,可以保證每行數(shù)據(jù)的唯一性。(2)創(chuàng)建索引,可以加快數(shù)據(jù)的檢索速度,這也是使用索引的主要原因。(3)在使用ORDERBY和GROUPBY子句進(jìn)行數(shù)據(jù)檢索時(shí),可以顯著減少查詢中分組和排序的時(shí)間。6.2.1索引概述6.2
索引的使用3.創(chuàng)建索引的注意事項(xiàng)創(chuàng)建索引可以加快數(shù)據(jù)檢索速度,是不是可以每個(gè)表甚至每個(gè)字段都創(chuàng)建一個(gè)索引呢?回答當(dāng)然是否定的。增加索引也有其不利的一面。(1)創(chuàng)建索引和維護(hù)索引耗費(fèi)時(shí)間。(2)索引需要占用物理空間,若建立聚集索引,則需要更大的空間。(3)當(dāng)對(duì)表中的數(shù)據(jù)進(jìn)行增加、刪除和修改的時(shí)候,索引需要?jiǎng)討B(tài)進(jìn)行維護(hù),這樣就增加了數(shù)據(jù)的維護(hù)成本。6.2.1索引概述6.2
索引的使用4.填充因子(FILLFACTOR)填充因子是索引的一個(gè)特性,用來(lái)設(shè)置索引頁(yè)數(shù)據(jù)填充的空間百分比,即可算出每個(gè)索引頁(yè)的剩余空間,用于以后表中數(shù)據(jù)的擴(kuò)展并減小頁(yè)拆分的可能性。填充因子是從0到100的百分比數(shù)值,假如取值為70%,則意味著還有30%的空間供以后使用,設(shè)為100時(shí)表示將數(shù)據(jù)頁(yè)填滿,意味著索引頁(yè)沒(méi)有剩余空間。只有當(dāng)不會(huì)對(duì)數(shù)據(jù)進(jìn)行更改時(shí)(例如只讀表中)才用此設(shè)置。值越小則數(shù)據(jù)頁(yè)上的空閑空間越大,這樣可以減少在索引增長(zhǎng)過(guò)程中進(jìn)行頁(yè)拆分的需要,但這一操作需要占用更多的磁盤(pán)空間。填充因子指定不當(dāng),會(huì)降低數(shù)據(jù)庫(kù)的讀取性能,其降低量與填充因子設(shè)置值成反比。6.2.1索引概述6.2
索引的使用索引可以分為三類:6.2.2索引的類型唯一索引聚集索引非聚集索引6.2
索引的使用4.創(chuàng)建聚集索引或非聚集索引的參考6.2.2索引的類型6.2
索引的使用1.使用SQLServerManagementStudio管理工具創(chuàng)建索引2.使用Transact-SQL語(yǔ)句創(chuàng)建索引6.2.3創(chuàng)建索引CREATE[UNIQUE][CLUSTERED|NONCLUSTERED]INDEX索引名ON{表|視圖}(列[ASC|DESC][,…n])WITHFILLFACTOR=n6.2
索引的使用1.使用SQLServerManagementStudio管理工具查看索引2.使用Transact-SQL語(yǔ)句查看索引使用Transact-SQL語(yǔ)句查看表上的索引信息,可以通過(guò)執(zhí)行系統(tǒng)存儲(chǔ)過(guò)程sp_helpindex實(shí)現(xiàn),語(yǔ)法格式為:6.2.4查看索引信息EXECsp_helpindex表名|視圖名6.2
索引的使用1.
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025企業(yè)法律風(fēng)險(xiǎn)之合同履行過(guò)程中應(yīng)注意的事項(xiàng)
- 2025湖南潭邵高速邵陽(yáng)東互通第合同段施組
- 2025戶外廣告牌出租合同樣本
- 班主任德育工作總結(jié)
- 課題申報(bào)參考:孿生數(shù)據(jù)驅(qū)動(dòng)的退役產(chǎn)品人機(jī)協(xié)同拆解動(dòng)態(tài)優(yōu)化與自適應(yīng)評(píng)估研究
- 課題申報(bào)參考:聯(lián)合教研提升農(nóng)村中小學(xué)科學(xué)教師跨學(xué)科素養(yǎng)的機(jī)制與策略研究
- 自我驅(qū)動(dòng)學(xué)習(xí)培養(yǎng)學(xué)生自主能力的策略與實(shí)踐案例
- 科技在提升個(gè)人防護(hù)裝備舒適度中的應(yīng)用
- 2024年家畜轉(zhuǎn)基因胚胎項(xiàng)目資金需求報(bào)告代可行性研究報(bào)告
- 物聯(lián)網(wǎng)時(shí)代下嵌入式系統(tǒng)的多層防護(hù)策略
- GB/T 16895.3-2024低壓電氣裝置第5-54部分:電氣設(shè)備的選擇和安裝接地配置和保護(hù)導(dǎo)體
- 計(jì)劃合同部部長(zhǎng)述職報(bào)告范文
- 人教版高一地理必修一期末試卷
- GJB9001C質(zhì)量管理體系要求-培訓(xùn)專題培訓(xùn)課件
- 二手車車主寄售協(xié)議書(shū)范文范本
- 窗簾采購(gòu)?fù)稑?biāo)方案(技術(shù)方案)
- 五年級(jí)上冊(cè)小數(shù)除法豎式計(jì)算練習(xí)300題及答案
- 語(yǔ)言規(guī)劃講義
- 生活用房設(shè)施施工方案模板
- 上海市楊浦區(qū)2022屆初三中考二模英語(yǔ)試卷+答案
- GB/T 9755-2001合成樹(shù)脂乳液外墻涂料
評(píng)論
0/150
提交評(píng)論