日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Oracle9i全索引掃描和函數(shù)索引一起工作的原理

如果你度數(shù)據(jù)庫的相關(guān)實際操作很感興趣的話沒那么你肯定會知道在Oracle9i之前,Oracle 9i全索引掃描只有再創(chuàng)建相關(guān)索引時,沒有空值的時候才可以進行使用,也就是說,Oracle建立索引時必須用一個NOT NULL子句才可以使用該索引。由于Oracle9i支持用函數(shù)(function-based)索引實現(xiàn)的唯索索引掃描,這種情況大大改觀。

東川網(wǎng)站建設公司創(chuàng)新互聯(lián)公司,東川網(wǎng)站設計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為東川成百上千提供企業(yè)網(wǎng)站建設服務。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設要多少錢,請找那個售后服務好的東川做網(wǎng)站的公司定做!

簡單回歸一下,函數(shù)索引是Oracle8的一個重要改進,因為它提供了一種有效的消除無必要長表全掃描的機制,由于函數(shù)索引可以在任何查詢語句中的WHERE子句中精確復制,Oracle總會用一個索引來匹配上SQL查詢的WHERE子句。

現(xiàn)在,我要會用一個student表來舉一個簡單的例子來解釋Oracle 9i全索引掃描如何與函數(shù)索引一起工作的過程。

創(chuàng)建student表

 
 
 
  1. (student_name varchar2(40), date_of_birth date); 

使用這個表,創(chuàng)建與表中所有列相關(guān)聯(lián)的函數(shù)索引。在本例中,該函數(shù)為initcap(即大寫每個單詞的首字母)和to_char(即把一個數(shù)字變成字符):

 
 
 
  1. create index whole_student
  2. on student
  3. (initcap(student_name), to_char(date_of_birth,’MM-DD-YY’)); 

定義完函數(shù)索引后,Oracle9i中任何可以引用這些列(column)的SQL語句都可以使用Oracle 9i全索引掃描。下面是SQL匹配函數(shù)索引的查詢例子:

 
 
 
  1. select * from student
  2. where initcap(student_name) = ‘Jones’;
  3. select * from student
  4. where to_char(date_of_birth,’MM-DD=YY’) = ’04-07-85’; 

用函數(shù)索引來調(diào)用全索引掃描

Oracle9i只要可能就會使用函數(shù)索引并在函數(shù)索引的基礎上調(diào)用全索引掃描。如果SQL優(yōu)化器統(tǒng)計結(jié)果表明使用全索引掃描的速度將會超過通過索引的b-樹訪問的速度,那么Oracle9i就會這么做。

下面是用函數(shù)索引調(diào)用唯索掃描的準則。所有的SQL謂詞匹配索引中的列,查詢必須從表中返回足夠多的行,這樣做的目的是為了讓代價優(yōu)化器(cost-based optimizer)來判斷全索引掃描是否要比傳統(tǒng)的索引訪問方法要快。是否調(diào)用全索引掃描的決定取決于下面幾個參數(shù)設置:

代價優(yōu)化器的適當統(tǒng)計數(shù)字——這個計劃(schema)最近已經(jīng)分析過了,而且optimizer_mode參數(shù)不能設置為RULE。

索引的并行程度——注意索引的并行程度是獨立設置的;索引并沒有繼承表的并行程度。

optimizer_index_cost_adj的設置——它控制代價優(yōu)化器是否傾向于Oracle 9i全索引掃描。

db_file_multiblock_read_count的設置——這個參數(shù)影響到全索引掃描的代價。這個值越高,全索引掃描的代價也就會越“便宜”。

索引的直方圖表示——對偏移(skewed)索引,它幫助代價優(yōu)化器評估查詢返回的行數(shù)。

Oracle的一個重要提高

在函數(shù)索引基礎上的快速全索引掃描是Oracle9i的另一個提高性能的途徑。當數(shù)據(jù)庫遷移到Oracle9i時,許多數(shù)據(jù)庫自動開始使用這個新的執(zhí)行計劃。不過,當SQL代價優(yōu)化器決定是否選擇全索引掃描時,還要考慮幾個因素。Oracle專業(yè)人員需要適當設置參數(shù),以確保代價優(yōu)化器不會用不合適的方式使用快速Oracle 9i全索引掃描——這一點需要特別注意。


當前題目:Oracle9i全索引掃描和函數(shù)索引一起工作的原理
本文鏈接:http://www.5511xx.com/article/dhddioc.html