自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SQL Server視圖索引與索引視圖指南

數(shù)據(jù)庫(kù) SQL Server
我們今天主要向大家講述的是SQL Server視圖索引(Indexed Views)與SQL Server數(shù)據(jù)庫(kù)的索引視圖指南,以下就是正文的主要內(nèi)容描述。

以下的文章主要描述的是SQL Server視圖索引(Indexed Views)與SQL Server數(shù)據(jù)庫(kù)的索引視圖指南,以及在其實(shí)際操作中的值得我們大家注意的事項(xiàng)與其實(shí)際應(yīng)用代碼的描述,以下就是文章的主要內(nèi)容的詳細(xì)描述,希望在你今后的學(xué)習(xí)中會(huì)有所幫助。

SQL Server視圖索引(Indexed Views):

文章分類:數(shù)據(jù)庫(kù)

 

正如第27章所講的那樣,SQL Server2000允許你創(chuàng)建索引視圖。一個(gè)索引的視圖是任意在其上定義了聚集索引的視圖。當(dāng)一個(gè)CREATE INDEX語(yǔ)句在視圖上執(zhí)行時(shí),視圖的結(jié)果集在數(shù)據(jù)庫(kù)中的組織和存儲(chǔ)與具有聚集索引的數(shù)據(jù)表是一樣的。

視圖中數(shù)據(jù)表上的數(shù)據(jù)發(fā)生改變將會(huì)自動(dòng)反映到視圖中,也會(huì)以同樣的方式數(shù)據(jù)表中的變化會(huì)反映到索引中。除了聚集索引,你可以在視圖上創(chuàng)建其他非聚集索引來(lái)提哦共另外的查詢性能。視圖上的額外的索引可為查詢優(yōu)化器提供更多的選擇。

 

在SQL Server2000的開(kāi)發(fā)版和企業(yè)版中,當(dāng)一個(gè)索引視圖存在于一個(gè)表中,你可以在查詢中直接訪問(wèn)視圖,優(yōu)化器將自動(dòng)考慮使用視圖的索引來(lái)提高查詢性能,就像表中的索引來(lái)提高性能一樣。即使一個(gè)查詢沒(méi)有直接在FROM子句中使用視圖名字,查詢優(yōu)化器也將考慮使用索引視圖。換句話,當(dāng)一個(gè)查詢可能從索引視圖中獲得好處,查詢優(yōu)化器會(huì)替換掉表上的索引,而使用索引視圖來(lái)滿足查詢。

SQL Server 2000的所有版本都可以創(chuàng)建索引,但是只有開(kāi)發(fā)版本和企業(yè)版將自動(dòng)使用索引視圖來(lái)優(yōu)化查詢,這一點(diǎn)很重要。在其他版本中,索引視圖將不會(huì)用來(lái)提高查詢性能,除非查詢中明確指定視圖并且“NOEXPAND”優(yōu)化指示也被指定。沒(méi)有NOEXPAND,SQL Server將擴(kuò)展視圖到視圖所對(duì)應(yīng)的表并且基于表中的索引進(jìn)行優(yōu)化。下面的例子展示了使用NOEXPAND 選項(xiàng)來(lái)強(qiáng)制SQL Server來(lái)使用視圖索引。

Sql代碼

  1. Select * from sales_Qty_Rollup WITH (NOEXPAND)   
  2. Where stor_id between 'B914' and 'B999' SET ARITHABORT ON   
  3. Select * from sales_Qty_Rollup WITH (NOEXPAND)  
  4. Where stor_id between 'B914' and 'B999' SET ARITHABORT ON  

索引視圖的確增加了負(fù)擔(dān)并且可能使得SQL Server變得更復(fù)雜,因?yàn)樾枰绕胀ㄋ饕ㄙM(fèi)更多時(shí)間來(lái)維護(hù)。當(dāng)索引所在的表被修改了,SQL Server不得不修改視圖的結(jié)果集和視圖中的索引。視圖索引的范圍可能比單個(gè)表要大些,特別是假如視圖定義在幾個(gè)大表上。

在修改中維護(hù)視圖及其索引所需的負(fù)擔(dān)所產(chǎn)生的負(fù)面影響要比從其獲得好處要多些。因?yàn)檫@些額外的維護(hù)負(fù)擔(dān),只在那些獲得好處超過(guò)其維護(hù)負(fù)擔(dān)的視圖上創(chuàng)建索引。

索引視圖指南

在表數(shù)據(jù)相對(duì)靜態(tài)的視圖上創(chuàng)建索引。

將被多個(gè)查詢使用的視圖創(chuàng)建索引。

 

保持索引盡可能小,就像表索引一樣,越小的索引,SQL Server訪問(wèn)數(shù)據(jù)越高效。

 

除了開(kāi)發(fā)版和企業(yè)版之外,你將需要指定NOEXPAND指示符,否則索引視圖將不會(huì)用來(lái)優(yōu)化查詢。

 

選擇索引:查詢VS 修改性能 | 評(píng)價(jià)索引的有效性(Evaluating Index Usefu ...

 

責(zé)任編輯:佚名 來(lái)源: 清華大學(xué)出版社
相關(guān)推薦

2010-07-15 15:42:38

2010-07-07 13:18:13

SQL Server視

2010-07-14 10:11:30

SQL Server系

2011-04-02 13:37:05

SQL Server 索引視圖

2010-04-19 10:43:27

SQL Server

2010-05-04 10:20:17

Oracle物化視圖

2011-04-02 17:21:29

sql server視圖

2010-09-13 11:09:34

SQL SERVER分

2010-11-12 11:19:19

SQL Server視

2010-09-27 09:54:26

Sql Server視

2010-07-19 09:31:53

SQL Server系

2010-07-19 16:04:45

SQL Server索

2010-04-09 10:52:30

Oracle數(shù)據(jù)對(duì)象

2010-10-26 16:43:58

查看Oracle索引

2009-07-02 12:57:00

SQL Server視

2010-11-11 17:20:51

SQL Server創(chuàng)

2010-09-16 13:42:55

SQL SERVER索

2010-11-11 16:59:59

SQL Server視

2010-07-12 10:34:58

SQL Server視

2010-10-21 15:07:09

SQL Server系
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)