SQL Server設(shè)計(jì)索引導(dǎo)航模式
以下的文化在那個(gè)主要是向大家介紹的是SQL Server設(shè)計(jì)索引的實(shí)際操作過程中一些通用的指南,主要包括以下幾點(diǎn),對(duì)于一般的組合索引,盡量保持索引的越靠左邊的列越具有高的選擇性。索引中的***列應(yīng)該***有唯一性(如果可能)。
并且索引列的順序總體上應(yīng)該具有從高到低的唯一性。然而,記住如果索引的***列沒有在SARG或join子句中出現(xiàn),那么選擇性將不會(huì)有任何幫助。為了確保索引能夠被大多數(shù)查詢使用,***列應(yīng)該是查詢中最常用的列。
確保join中使用的列具有索引。如果join中的列上沒有索引,Join的處理將是低效的。記住:一個(gè)PRIMARY KEY約束將自動(dòng)會(huì)在一個(gè)列上創(chuàng)建索引,但是FOREIGN KEY約束不會(huì)的。如果你的查詢通常在表的primary Key 和foreign key之間進(jìn)行join操作,那么你將會(huì)在foreign key上創(chuàng)建索引。
為你的最關(guān)鍵查詢和事務(wù)來(lái)調(diào)整索引。你不能為每個(gè)可能的查詢都創(chuàng)建索引。然而,如果你能識(shí)別你的關(guān)鍵和最常用的查詢,并為它們創(chuàng)建索引,那么你的應(yīng)用將運(yùn)行地更好。SQL Profile是一個(gè)識(shí)別你的最常用查詢的有用工具。SQL Profie也能識(shí)別那些運(yùn)行慢的查詢。
避免列上的索引具有低選擇性。優(yōu)化器將不可能使用這些索引,它們只是占有些空間并且在插入、刪除、修改時(shí)增加了以一些不必的負(fù)擔(dān)而已。當(dāng)索引能覆蓋一個(gè)查詢則是一個(gè)例外。索引覆蓋將在后面詳細(xì)介紹。
小心選擇你的聚集和非聚集索引。接下來(lái)的兩個(gè)小節(jié)將討論給出一些選擇聚集和非聚集索引的技巧和指南。這些都基于對(duì)列上包含的數(shù)據(jù)和該列上所執(zhí)行的查詢類型來(lái)給出的。
以上的相關(guān)內(nèi)容就是對(duì)SQL Server設(shè)計(jì)索引的一些通用的指南包括以下幾點(diǎn)的介紹,望你能有所收獲。

上述的相關(guān)內(nèi)容就是對(duì)SQL Server設(shè)計(jì)索引的一些通用的指南包括的幾點(diǎn)描述,希望會(huì)給你帶來(lái)一些幫助在此方面。
【編輯推薦】
- SQL Server 2008數(shù)據(jù)庫(kù)在實(shí)際應(yīng)用中的獨(dú)到之處
- SQL Server磁帶備份設(shè)備的性能優(yōu)化過程
- 實(shí)現(xiàn)SQL Server數(shù)據(jù)備份可用觸發(fā)器
- 解決SQL Server數(shù)據(jù)庫(kù)中附加數(shù)據(jù)庫(kù)的出錯(cuò)問題
- SQL Server數(shù)據(jù)庫(kù)中的9簡(jiǎn)單示例



















