本文主要介紹sql server create index語(yǔ)句(sqlserver2008索引創(chuàng)建),下面一起看看sql server create index語(yǔ)句(sqlserver2008索引創(chuàng)建)相關(guān)資訊。
什么是指數(shù)?以目錄頁(yè)(索引)漢語(yǔ)詞典為例:漢語(yǔ)詞典中存儲(chǔ)漢字的頁(yè)和sql server中存儲(chǔ)數(shù)據(jù)記錄的頁(yè),每頁(yè)的容量通常為4k。為了加快查找速度,漢語(yǔ)字(詞)碼一般以拼音、筆畫(huà)、偏旁部首等為基礎(chǔ)。(縮音),并且我們可以根據(jù)拼音和筆畫(huà)搜索方法快速找到需要的字(詞)。同樣,sql server允許用戶在表中創(chuàng)建索引,并預(yù)先指定要排序的列,從而大大提高了查詢速度。sql server中的數(shù)據(jù)還存儲(chǔ)了page(4kb)index:sql server布局的一種內(nèi)部方法,為sql server提供了一種布局查詢數(shù)據(jù)的方法。索引頁(yè):在數(shù)據(jù)庫(kù)中存儲(chǔ)索引的數(shù)據(jù)頁(yè);索引頁(yè)類(lèi)似于按拼音或筆畫(huà)排序的漢字(詞)目錄。索引的作用:使用索引可以大大提高數(shù)據(jù)庫(kù)的檢索速度和性能。指數(shù)唯一索引:唯一索引不允許兩行具有相同的索引值。主鍵索引:為表定義主鍵將自動(dòng)創(chuàng)建主鍵索引,這是一種特殊類(lèi)型的唯一索引。主鍵索引要求主鍵中的每個(gè)值都是唯一的,不能為空。cluster:表中行的物理順序與鍵值的邏輯(索引)順序相同,每個(gè)表只能有一個(gè)。非聚集索引(nonclustered index):由非聚集索引指定的表的邏輯順序。數(shù)據(jù)存儲(chǔ)在一個(gè)位置,索引存儲(chǔ)在另一個(gè)位置。索引包含指向數(shù)據(jù)存儲(chǔ)位置的指針??梢猿^(guò)249。索引類(lèi)型:在漢語(yǔ)詞典中,希望你能理解聚集索引和非聚集索引的概念。唯一索引:唯一索引不允許兩行具有相同的索引值。如果現(xiàn)有數(shù)據(jù)中有重復(fù)的鍵值,大多數(shù)數(shù)據(jù)庫(kù)不允許將唯一新創(chuàng)建的索引與表一起保存。當(dāng)數(shù)據(jù)庫(kù)也拒絕接受數(shù)據(jù)時(shí),新數(shù)據(jù)將在表中有重復(fù)的鍵值。例如,如果唯一的指標(biāo)是在stuinfo表的愚蠢列中創(chuàng)建的,那么所有學(xué)生 身份證號(hào)碼不能重復(fù)。提示:已經(jīng)創(chuàng)建了唯一約束,并且將自動(dòng)創(chuàng)建唯一索引。盡管唯一索引有助于查找信息,但為了獲得最佳性能,建議使用主鍵約束或唯一約束。主鍵索引:主鍵索引是通過(guò)在數(shù)據(jù)庫(kù)圖表中定義表的主鍵來(lái)自動(dòng)創(chuàng)建的,它是一種特殊類(lèi)型的唯一索引。主鍵索引要求主鍵中的每個(gè)值都是唯一的。當(dāng)在查詢中使用主鍵索引時(shí),它還允許快速訪問(wèn)數(shù)據(jù)。聚集索引(clustered index)是聚集索引,表中行的物理順序是具有相同邏輯(index)的鍵值順序。一個(gè)表只能包含一個(gè)聚集索引。例如,漢字代碼默認(rèn)頁(yè)碼,每頁(yè)字典中按字母順序排序的字母,音標(biāo)1,b,c,d,x,y,z是索引的邏輯順序和頁(yè)碼1,2,3的物理順序...按拼音,默認(rèn)排序字典是索引順序和邏輯順序一樣。也就是拼音之后這個(gè)字對(duì)應(yīng)的頁(yè)碼(字)更大。比如字?jǐn)?shù)(單詞)對(duì)應(yīng)的拼音比拼音對(duì)應(yīng)的ds(單詞)晚。非聚集索引(非聚集)如果對(duì)指標(biāo)進(jìn)行匯總,則表中行的物理順序與鍵值的邏輯順序不匹配。聚集索引的數(shù)據(jù)訪問(wèn)速度比非聚集索引(非聚集索引)快。比如索引的筆畫(huà)是非聚集索引,頁(yè)碼對(duì)應(yīng)的一個(gè)字(詞)可能大于三個(gè)字對(duì)應(yīng)的頁(yè)碼(最后一個(gè)字)。提示:在sql server中,只能為一個(gè)表創(chuàng)建一個(gè)聚合索引和多個(gè)非聚集索引。如何創(chuàng)建索引使用t-sql語(yǔ)句創(chuàng)建索引的語(yǔ)法:復(fù)制代碼如下:{ } { create a unique cluster | aggregation } index index _ name in table _ name(column _ name…){ fill factor = x } q表示唯一索引,可選q聚合,聚合是聚集索引和非聚集索引??蛇x的q fillfactor指示填充因子,并指定一個(gè)介于0和100之間的值,該值指示空間的索引頁(yè)填充率。創(chuàng)建表的stumarks writt——寫(xiě)入列以創(chuàng)建非聚集索引:填充因子為30%×/在stu marks(write nexam)中創(chuàng)建填充因子為30的非聚集索引ix _ writenexam-select *根據(jù)指定的查詢索引ix _ write nexam。from stu marks(index = ix _ written exam)是一個(gè)介于60和90之間的writenexam。雖然我們可以指定sql server的查詢數(shù)據(jù),但我們通常不 不需要手動(dòng)指定,sql server將根據(jù)我們創(chuàng)建的索引自動(dòng)優(yōu)化查詢。索引的優(yōu)缺點(diǎn)優(yōu)點(diǎn)-加快訪問(wèn)速度-加強(qiáng)行的唯一性缺點(diǎn)-基于索引的表在數(shù)據(jù)庫(kù)中需要更多的存儲(chǔ)空間。-處理數(shù)據(jù)的命令需要很長(zhǎng)時(shí)間,因?yàn)樗鼈冃枰滤饕?。?chuàng)建索引的準(zhǔn)則根據(jù)以下標(biāo)準(zhǔn)選擇要索引的列。-此欄用于頻繁搜索。-該列用于對(duì)數(shù)據(jù)進(jìn)行排序。不要使用以下列創(chuàng)建索引:-列僅包含幾個(gè)不同的值。-該表只包含幾行。為小表創(chuàng)建索引可能不是一件好事,因?yàn)閟ql server在索引中搜索數(shù)據(jù)比在表中逐行搜索花費(fèi)的時(shí)間更長(zhǎng)。
了解更多sql server create index語(yǔ)句(sqlserver2008索引創(chuàng)建)相關(guān)內(nèi)容請(qǐng)關(guān)注本站點(diǎn)。