>  8.2.1用CREATEINDEX命令創(chuàng)建索引  CREATEINDEX既可以創(chuàng)建一個可改變表的物理順序的簇索引,也可以創(chuàng)建提高查詢性能的非簇索引。其語法如下:  CREATE[UNIQUE][CLUST">
ms sql入門基礎(chǔ)-創(chuàng)建索引--

ms sql入門基礎(chǔ)-創(chuàng)建索引--

ID:9499223

大?。?7.50 KB

頁數(shù):6頁

時間:2018-05-01

ms sql入門基礎(chǔ)-創(chuàng)建索引--_第1頁
ms sql入門基礎(chǔ)-創(chuàng)建索引--_第2頁
ms sql入門基礎(chǔ)-創(chuàng)建索引--_第3頁
ms sql入門基礎(chǔ)-創(chuàng)建索引--_第4頁
ms sql入門基礎(chǔ)-創(chuàng)建索引--_第5頁
資源描述:

《ms sql入門基礎(chǔ)-創(chuàng)建索引--》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。

1、MSSQL入門基礎(chǔ):創(chuàng)建索引>>  8.2.1用CREATEINDEX命令創(chuàng)建索引  CREATEINDEX既可以創(chuàng)建一個可改變表的物理順序的簇索引,也可以創(chuàng)建提高查詢性能的非簇索引。其語法如下:  CREATE[UNIQUE][CLUSTERED

2、NONCLUSTERED]  INDEXindex_nameON{table

3、vien[ASC

4、DESC][,...n])  [PDB]  ]  [ONfilegroup]  各參數(shù)說明如下:UNIQUE  創(chuàng)建一個惟一索引,即索引的鍵值不重復(fù)。在列包含重復(fù)值時,不能建惟一索引。如要使用此選項,則應(yīng)確定索引所包含的列均不允許NULL值,否則在使用時

5、會經(jīng)常出錯。CLUSTERED  指明創(chuàng)建的索引為簇索引。如果此選項缺省,則創(chuàng)建的索引為非簇索引。NONCLUSTERED  指明創(chuàng)建的索引為非簇索引其索引。數(shù)據(jù)頁中包含了指向數(shù)據(jù)庫中實(shí)際的表數(shù)據(jù)頁的指針。index_name  指定所創(chuàng)建的索引的名稱。索引名稱在一個表中應(yīng)是惟一的,但在同一數(shù)據(jù)庫或不同數(shù)據(jù)庫中可以重復(fù)。table  指定創(chuàng)建索引的表的名稱。必要時還應(yīng)指明數(shù)據(jù)庫名稱和所有者名稱。vien  指定被索引的列。如果使用兩個或兩個以上的列組成一個索引,則稱為復(fù)合索引。一個索引中最多可以指定16個列,但列的數(shù)據(jù)類型的長度和不能超過900個字節(jié)。PAD_INDEX  指定填充索引的內(nèi)部節(jié)

6、點(diǎn)的行數(shù),至少應(yīng)大于等于兩行。PAD_INDEX選項只有在FILLFACTOR選項指定后才起作用。因為PAD_INDEX使用與FILLFACTOR相同的百分比。缺省時,SQLServer確保每個索引頁至少有能容納一條最大索引行數(shù)據(jù)的空閑空間。如果FILLFACTOR指定的百分比不夠容納一行數(shù)據(jù)S,QLServer會自動內(nèi)部更改百分比。FILLFACTOR=fillfactor  FILLFACTOR稱為填充因子,它指定創(chuàng)建索引時,每個索引頁的數(shù)據(jù)占索引頁大小的百分比,fillfactor的值為1到100。它其實(shí)同時指出了索引頁保留的自由空間占索引頁大小的百分比。即100-fillfactor。

7、對于那些頻繁進(jìn)行大量數(shù)據(jù)插入或刪除的表在建索引時應(yīng)該為將來生成的索引數(shù)據(jù)預(yù)留較大的空間,即將fillfactor設(shè)得較小,否則,索引頁會因數(shù)據(jù)的插入而很快填滿,并產(chǎn)生分頁,而分頁會大大增加系統(tǒng)的開銷。但如果設(shè)得過小,又會浪費(fèi)大量的磁盤空間,降低查詢性能。因此,對于此類表通常設(shè)一個大約為10的fillfactor。而對于數(shù)據(jù)不更改的、高并發(fā)的、只讀的表,fillfactor可以設(shè)到95以上乃至100?! ∪绻麤]有指定此選項,SQLServer默認(rèn)其值為0。0是個特殊值,與其它小FILLFACTOR  值(如:1,2)的意義不同,其葉節(jié)點(diǎn)頁被完全填滿,而在索引頁中還有一些空間??梢浴 ∮么鎯^程S

8、p_configure來改變默認(rèn)的FILLFACTOR值。IGNORE_DUP_KEY  此選項控制了當(dāng)往包含于一個惟一約束中的列中插入重復(fù)數(shù)據(jù)時SQLServer所作的反應(yīng)。當(dāng)選擇此選項時,SQLServer返回一個錯誤信息,跳過此行數(shù)據(jù)的插入,繼續(xù)執(zhí)行下面的插入數(shù)據(jù)的操作:當(dāng)沒選擇此選項時,SQLServer不僅會返回一個錯誤信息,還會回滾(RollsBack)整個INSERT語句(關(guān)于回滾,請參見數(shù)據(jù)庫更新章節(jié)中的事務(wù)一節(jié))。DROP_EXISTING  指定要刪除并重新創(chuàng)建簇索引。刪除簇索引會導(dǎo)致所有的非簇索引被重建,因為需要用行指針來替換簇索引鍵。如果再重建簇索引,那么非簇索引又會再

9、重建一次,以便用簇索引鍵來替換行指針。使用DROP_EXISTING選項可以使非簇索引只重建一次。STATISTICS_NOREPUTE  指定分布統(tǒng)計不自動更新。需要手動執(zhí)行不帶NOREPUTE子句的UPDATESTATISTICS命令。SORT_IN_TEMPDB  指定用于創(chuàng)建索引的分類排序結(jié)果將被存儲到Tempdb數(shù)據(jù)庫中。如果Tempdb數(shù)據(jù)庫和用戶數(shù)據(jù)庫位于不同的磁盤設(shè)備上,那么使用這一選項可以減少創(chuàng)建索引的時間,但它會增加創(chuàng)建索引所需的磁盤空間。ONfilegroup  指定存放索引的文件組。注意:數(shù)據(jù)類型為TEXT、NTEXT、IMAGE或BIT的列不能作為索引的列。  由于索

10、引的寬度不能超過900個字節(jié),因此數(shù)據(jù)類型為CHAR、VARCHAR、BINARY和VARBINARY的列的列寬度超過了900字節(jié),或數(shù)據(jù)類型為NCHAR、NVARCHAR的列的列寬度超過了450個字節(jié)時也不能作為索引的列?! ≡谑褂盟饕齽?chuàng)建向?qū)?chuàng)建索引時,不能將計算列包含在索引中,但在直接創(chuàng)建或使用CREATEINDEX命令創(chuàng)建索引時,則可以對計算機(jī)列創(chuàng)建索引,這在SQLServer2000以前

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

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

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