SQL server創(chuàng)建索引

SQL server創(chuàng)建索引

ID:38285660

大?。?9.26 KB

頁數(shù):3頁

時間:2019-06-07

SQL server創(chuàng)建索引_第1頁
SQL server創(chuàng)建索引_第2頁
SQL server創(chuàng)建索引_第3頁
資源描述:

《SQL server創(chuàng)建索引》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、什么是索引拿漢語字典的目錄頁(索引)打比方:正如漢語字典中的漢字按頁存放一樣,SQLServer中的數(shù)據(jù)記錄也是按頁存放的,每頁容量一般為4K。為了加快查找的速度,漢語字(詞)典一般都有按拼音、筆畫、偏旁部首等排序的目錄(索引),我們可以選擇按拼音或筆畫查找方式,快速查找到需要的字(詞)。同理,SQLServer允許用戶在表中創(chuàng)建索引,指定按某列預先排序,從而大大提高查詢速度。?SQLServer中的數(shù)據(jù)也是按頁(4KB)存放?索引:是SQLServer編排數(shù)據(jù)的內(nèi)部方法。它為SQLServer提供一種方法來編排查詢數(shù)據(jù)。?索引頁:數(shù)據(jù)庫中存儲索引的數(shù)據(jù)頁;索引頁類似于漢

2、語字(詞)典中按拼音或筆畫排序的目錄頁。?索引的作用:通過使用索引,可以大大提高數(shù)據(jù)庫的檢索速度,改善數(shù)據(jù)庫性能。索引類型?唯一索引:唯一索引不允許兩行具有相同的索引值?主鍵索引:為表定義一個主鍵將自動創(chuàng)建主鍵索引,主鍵索引是唯一索引的特殊類型。主鍵索引要求主鍵中的每個值是唯一的,并且不能為空?聚集索引(Clustered):表中各行的物理順序與鍵值的邏輯(索引)順序相同,每個表只能有一個?非聚集索引(Non-clustered):非聚集索引指定表的邏輯順序。數(shù)據(jù)存儲在一個位置,索引存儲在另一個位置,索引中包含指向數(shù)據(jù)存儲位置的指針??梢杂卸鄠€,小于249個索引類型:再次

3、用漢語字典打比方,希望大家能夠明白聚集索引和非聚集索引這兩個概念。唯一索引:唯一索引不允許兩行具有相同的索引值。如果現(xiàn)有數(shù)據(jù)中存在重復的鍵值,則大多數(shù)數(shù)據(jù)庫都不允許將新創(chuàng)建的唯一索引與表一起保存。當新數(shù)據(jù)將使表中的鍵值重復時,數(shù)據(jù)庫也拒絕接受此數(shù)據(jù)。例如,如果在stuInfo表中的學員員身份證號(stuID)列上創(chuàng)建了唯一索引,則所有學員的身份證號不能重復。提示:創(chuàng)建了唯一約束,將自動創(chuàng)建唯一索引。盡管唯一索引有助于找到信息,但為了獲得最佳性能,建議使用主鍵約束或唯一約束。主鍵索引:在數(shù)據(jù)庫關(guān)系圖中為表定義一個主鍵將自動創(chuàng)建主鍵索引,主鍵索引是唯一索引的特殊類型。主鍵索引

4、要求主鍵中的每個值是唯一的。當在查詢中使用主鍵索引時,它還允許快速訪問數(shù)據(jù)。聚集索引(clusteredindex)在聚集索引中,表中各行的物理順序與鍵值的邏輯(索引)順序相同。表只能包含一個聚集索引。例如:漢語字(詞)典默認按拼音排序編排字典中的每頁頁碼。拼音字母a,b,c,d……x,y,z就是索引的邏輯順序,而頁碼1,2,3……就是物理順序。默認按拼音排序的字典,其索引順序和邏輯順序是一致的。即拼音順序較后的字(詞)對應(yīng)的頁碼也較大。如拼音“ha”對應(yīng)的字(詞)頁碼就比拼音“ba”對應(yīng)的字(詞)頁碼靠后。非聚集索引(Non-clustered)如果不是聚集索引,表中各

5、行的物理順序與鍵值的邏輯順序不匹配。聚集索引比非聚集索引(nonclusteredindex)有更快的數(shù)據(jù)訪問速度。例如,按筆畫排序的索引就是非聚集索引,“1”畫的字(詞)對應(yīng)的頁碼可能比“3”畫的字(詞)對應(yīng)的頁碼大(靠后)。提示:SQLServer中,一個表只能創(chuàng)建1個聚集索引,多個非聚集索引。設(shè)置某列為主鍵,該列就默認為聚集索引如何創(chuàng)建索引使用T-SQL語句創(chuàng)建索引的語法:CREATE[UNIQUE][CLUSTERED

6、NONCLUSTERED]INDEXindex_nameONtable_name(column_name…)[WITHFILLFACTOR=x]q

7、UNIQUE表示唯一索引,可選qCLUSTERED、NONCLUSTERED表示聚集索引還是非聚集索引,可選qFILLFACTOR表示填充因子,指定一個0到100之間的值,該值指示索引頁填滿的空間所占的百分比在stuMarks表的writtenExam列創(chuàng)建索引:USEstuDBGOIFEXISTS(SELECTnameFROMsysindexesWHEREname='IX_writtenExam')DROPINDEXstuMarks.IX_writtenExam/*--筆試列創(chuàng)建非聚集索引:填充因子為30%--*/CREATENONCLUSTEREDINDEXIX_wr

8、ittenExamONstuMarks(writtenExam)WITHFILLFACTOR=30GO/*-----指定按索引IX_writtenExam查詢----*/SELECT*FROMstuMarks(INDEX=IX_writtenExam)WHEREwrittenExamBETWEEN60AND90雖然我們可以指定SQLServer按哪個索引進行數(shù)據(jù)查詢,但一般不需要我們?nèi)斯ぶ付?。SQLServer將會根據(jù)我們創(chuàng)建的索引,自動優(yōu)化查詢。索引的優(yōu)缺點?優(yōu)點–加快訪問速度–加強行的唯一性?缺點–帶索引的表在數(shù)據(jù)庫中需要

當前文檔最多預覽五頁,下載文檔查看全文

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

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