亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁(yè) > 知識(shí)庫(kù) > Oracle數(shù)據(jù)庫(kù)中建立索引的基本方法講解

Oracle數(shù)據(jù)庫(kù)中建立索引的基本方法講解

熱門標(biāo)簽:山東crm外呼系統(tǒng)軟件 愛(ài)客外呼系統(tǒng)怎么樣 哪個(gè)400外呼系統(tǒng)好 哈爾濱電話機(jī)器人銷售招聘 地圖標(biāo)注養(yǎng)老院 慧營(yíng)銷crm外呼系統(tǒng)丹丹 開發(fā)外呼系統(tǒng) 圖吧網(wǎng)站地圖標(biāo)注 百度地圖標(biāo)注途經(jīng)點(diǎn)

怎樣建立最佳索引?

1、明確地創(chuàng)建索引

create index index_name on table_name(field_name)

tablespace tablespace_name

pctfree 5

initrans 2

maxtrans 255

storage

(

minextents 1

maxextents 16382

pctincrease 0

);

2、創(chuàng)建基于函數(shù)的索引

常用與UPPER、LOWER、TO_CHAR(date)等函數(shù)分類上,例:

create index idx_func on emp(UPPER(ename)) tablespace tablespace_name;

3、創(chuàng)建位圖索引

對(duì)基數(shù)較小,且基數(shù)相對(duì)穩(wěn)定的列建立索引時(shí),首先應(yīng)該考慮位圖索引,例:

create bitmap index idx_bitm on class (classno) tablespace tablespace_name;

4、明確地創(chuàng)建唯一索引

可以用create unique index語(yǔ)句來(lái)創(chuàng)建唯一索引,例:

create unique index dept_unique_idx on dept(dept_no) tablespace idx_1;

5、創(chuàng)建與約束相關(guān)的索引

可以用using index字句,為與unique和primary key約束相關(guān)的索引,例:

alter table table_name

add constraint PK_primary_keyname primary key(field_name)

using index tablespace tablespace_name;

如何創(chuàng)建局部區(qū)索引?

1)基礎(chǔ)表必須是分區(qū)表

2)分區(qū)數(shù)量與基礎(chǔ)表相同

3)每個(gè)索引分區(qū)的子分區(qū)數(shù)量與相應(yīng)的基礎(chǔ)表分區(qū)相同

4)基礎(chǔ)表的自分區(qū)中的行的索引項(xiàng),被存儲(chǔ)在該索引的相應(yīng)的自分區(qū)中,例如

create index TG_CDR04_SERV_ID_IDX on TG_CDR04(SERV_ID)

Pctfree 5

Tablespace TBS_AK01_IDX

Storage(

MaxExtents 32768

PctIncrease 0

FreeLists 1

FreeList Groups 1

)

local

/

如何創(chuàng)建范圍分區(qū)的全局索引?

基礎(chǔ)表可以是全局表和分區(qū)表

create index idx_start_date on tg_cdr01(start_date)

global partition by range(start_date)

(partition p01_idx vlaues less than ('0106')

partition p01_idx vlaues less than ('0111')

...

partition p01_idx vlaues less than ('0401'))

/

如何重建現(xiàn)存的索引?

重建現(xiàn)存的索引的當(dāng)前時(shí)刻不會(huì)影響查詢

重建索引可以刪除額外的數(shù)據(jù)塊

提高索引查詢效率

alter index idx_name rebuild nologging;

對(duì)于分區(qū)索引

alter index idx_name rebuild partition partition_name nologging;

刪除索引的原因?

1)不再需要的索引

2)索引沒(méi)有針對(duì)其相關(guān)的表所發(fā)布的查詢提供所期望的性能改善

3)應(yīng)用沒(méi)有用該索引來(lái)查詢數(shù)據(jù)

4)該索引無(wú)效,必須在重建之前刪除該索引

5)該索引已經(jīng)變的太碎了,必須在重建之前刪除該索引

語(yǔ)句:

drop index idx_name;

drop index idx_name partition partition_name;

建立索引的代價(jià)?

基礎(chǔ)表維護(hù)時(shí),系統(tǒng)要同時(shí)維護(hù)索引,不合理的索引將嚴(yán)重影響系統(tǒng)資源,

主要表現(xiàn)在CPU和I/O上。

插入、更新、刪除數(shù)據(jù)產(chǎn)生大量db file sequential read鎖等待。

關(guān)于創(chuàng)建索引的建議
雖然說(shuō),在表中是否創(chuàng)建索引,不會(huì)影響到Oracle數(shù)據(jù)庫(kù)的使用,也不會(huì)影響數(shù)據(jù)庫(kù)語(yǔ)句的使用。這就好像即使字典沒(méi)有目錄的話,用戶仍然可以使用它一樣。可是,若字典沒(méi)有目錄,那么可想而知,用戶要查某個(gè)條目的話,其不得不翻遍整本字典。數(shù)據(jù)庫(kù)也是如此。若沒(méi)有建立相關(guān)索引的話,則數(shù)據(jù)庫(kù)在查詢記錄的時(shí)候,不得不去查詢整個(gè)表。當(dāng)表中的記錄比較多的時(shí)候,其查詢效率就會(huì)很低。所以,合適的索引,是提高數(shù)據(jù)庫(kù)運(yùn)行效率的一個(gè)很好的工具。

不過(guò),并不是說(shuō)表上的索引越多越好。過(guò)之而不及。故在數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程中,還是需要為表選擇一些合適的索引。寧缺勿濫,這是建立索引時(shí)的一個(gè)遵循標(biāo)準(zhǔn)。在理論上,雖然一個(gè)表可以設(shè)置無(wú)限的索引。但是,數(shù)據(jù)庫(kù)管理員需要知道,表中的索引越多,維護(hù)索引所需要的開銷也就越大。每當(dāng)數(shù)據(jù)表中記錄有增加、刪除、更新變化的時(shí)候,數(shù)據(jù)庫(kù)系統(tǒng)都需要對(duì)所有索引進(jìn)行更新。故數(shù)據(jù)庫(kù)表中的索引絕對(duì)不是多多益善。具體來(lái)說(shuō),在索引建立上,筆者對(duì)大家有如下建議。

建議一:在基數(shù)小的字段上要善于使用位圖索引。

基數(shù)是位圖索引中的一個(gè)基本的定義,它是指數(shù)據(jù)庫(kù)表中某個(gè)字段內(nèi)容中不重復(fù)的數(shù)值。如在員工信息表中的性別字段,一般就只有男跟女兩個(gè)值,所以,其基數(shù)為2;婚姻狀況字段的話,則其只有已婚、未婚、離婚三種狀態(tài),其基數(shù)就為3;民族一覽內(nèi)也是只有有限的幾個(gè)值。

對(duì)于要查詢基數(shù)小的字段,如現(xiàn)在用戶想查找所有婚姻狀況為“已婚”的“女性”時(shí),利用位圖索引可以提高查詢的效率。這主要是因?yàn)闃?biāo)準(zhǔn)索引是通過(guò)在索引中保存排序過(guò)的索引列以及對(duì)應(yīng)的ROWID來(lái)實(shí)現(xiàn)的。若我們?cè)诨鶖?shù)小的列上建立標(biāo)準(zhǔn)索引的話,則其會(huì)返回大量的記錄。

而當(dāng)我們?cè)趧?chuàng)建位圖索引的時(shí)候,在Oracle會(huì)對(duì)整個(gè)表進(jìn)行掃描,并且會(huì)為索引列的每個(gè)取值建立一個(gè)位圖。若內(nèi)容相同,則在位圖上會(huì)以一個(gè)相同的數(shù)字表示。此時(shí),若這個(gè)字段的基數(shù)比較小的話,則若需要實(shí)現(xiàn)對(duì)整個(gè)字段的查詢的話,效率就會(huì)非常的高。因?yàn)榇藭r(shí),數(shù)據(jù)庫(kù)只要位圖中數(shù)字相同的內(nèi)容找出來(lái)即可。

除了在數(shù)據(jù)表某列基數(shù)比較小的情況下,采用位圖索引外,我們往往在一些特殊的情況下,也會(huì)建議采用位圖索引。最常見(jiàn)的情況是,在Where限制條件中,若我們多次采用AND或者OR條件時(shí),也建議采用位圖索引。因?yàn)楫?dāng)一個(gè)查詢飲用了一些部署了位圖索引的列的時(shí)候,這些位圖可以很方便的與AND或者Or 運(yùn)算符操作結(jié)合以快速的找出用戶所需要的記錄。

但是,這里要注意,不是在條件語(yǔ)句中包含運(yùn)算符的時(shí)候,采用位圖索引都能夠提供比較高的效率。一般來(lái)說(shuō),只有AND 或者OR運(yùn)算符的時(shí)候,位圖索引才會(huì)比較具有優(yōu)勢(shì)。若此時(shí)用戶采用大于號(hào)或者不等于號(hào)作為條件語(yǔ)句中的限制條件的時(shí)候,則往往采用標(biāo)準(zhǔn)索引具有更大的優(yōu)勢(shì)。

所以,筆者在數(shù)據(jù)庫(kù)設(shè)置中,一般只有在三種情況下才采用位圖索引。一是列的基數(shù)比較小,而有可能需要根據(jù)這些字段的內(nèi)容查找相關(guān)的記錄;二是在條件語(yǔ)句中,用到了AND或者OR運(yùn)算符的時(shí)候。除了這兩種情況外,最好能夠采用其他適合的索引。第三種情況是,需要用到NULL作為查詢的限制條件。因?yàn)闃?biāo)準(zhǔn)查詢一般情況下,會(huì)忽略所有的NULL值列。也就是說(shuō),若需要查詢“所有沒(méi)有身份證號(hào)碼”的員工的信息的時(shí)候,標(biāo)準(zhǔn)索引并不能夠起到加速查詢速度的作用。此時(shí),就需要采用位圖索引。因?yàn)槲粓D索引會(huì)記錄相關(guān)的NULL值列信息。

建議二:創(chuàng)建索引的一些限制條件。

并不說(shuō),表或者列建立的索引越多越好。相反,索引建的越多,有時(shí)會(huì)反而會(huì)影響數(shù)據(jù)庫(kù)運(yùn)行的整體性能。所以,在建立索引的時(shí)候,仍然會(huì)有一些限制條件。

一是不要對(duì)一些記錄內(nèi)容比較少的表建立索引。在一個(gè)應(yīng)用系統(tǒng)設(shè)計(jì)的時(shí)候,如設(shè)計(jì)一個(gè)ERP系統(tǒng)的數(shù)據(jù)庫(kù),其雖然有幾千張表。但是,并不是每張表都有大量記錄的。相反,其中有近一半左右的數(shù)據(jù)表,可能其存儲(chǔ)的數(shù)據(jù)不會(huì)超過(guò)百條。如員工登陸帳戶密碼表、企業(yè)部門信息表等等。對(duì)于這些記錄內(nèi)容比較少的表,我們建立最好不要為其建立索引。無(wú)論是表上的,還是字段上,都不要建立索引。

二是若表中的內(nèi)容比較大,但是,這個(gè)表基本上不怎么查詢的時(shí)候,則只需要在表上建立索引即可;而不需要在字段上建立索引。如現(xiàn)在在ERP系統(tǒng)中,有一張表是“AD_Table”。其存儲(chǔ)的是這個(gè)數(shù)據(jù)庫(kù)中相關(guān)表的信息。這張表只有在數(shù)據(jù)庫(kù)設(shè)計(jì)的時(shí)候才會(huì)用到。故這張表中的記錄雖然比較多,但是由于用戶用的比較少,所以,一般沒(méi)有必要為這張表建立列級(jí)別上的索引。而直接用表索引來(lái)代替。

三是在一些NULL字段上,要根據(jù)實(shí)際情況來(lái)判斷是否要建立索引。如現(xiàn)在有一張人事檔案的表格,其上面有兩個(gè)字段,分別為“身份證號(hào)碼”與“地區(qū)”。有時(shí)會(huì)為了某個(gè)原因,企業(yè)需要所有員工都在系統(tǒng)中登記他們的身份證號(hào)碼,以方便他們辦工資卡、社會(huì)保險(xiǎn)等等。所以人事管理可能需要經(jīng)常的查詢系統(tǒng),看看有沒(méi)有沒(méi)有身份證號(hào)碼的員工信息。此時(shí),就需要利用條件“IS NULL”來(lái)查詢我們所需要的記錄。故為了提高查詢效率,若某個(gè)記錄可能為空,并且經(jīng)常需要以NULL為條件進(jìn)行查詢的時(shí)候,則最好給這個(gè)字段添加一個(gè)索引,并且最好建立位圖索引。相反,若雖然可能會(huì)以NULL這個(gè)條件作為查詢的限制語(yǔ)句,但是,用的不是很多的時(shí)候,則就沒(méi)有必要為其建立索引。

建議三:多表連接查詢的索引設(shè)計(jì)。

如現(xiàn)在有一個(gè)人事管理系統(tǒng)。人事經(jīng)理想知道員工的社保繳納情況。他需要知道員工的姓名、職務(wù)、戶籍性質(zhì)(農(nóng)民戶口跟居民戶口費(fèi)用不一樣)、繳納的情況等等。但是,這些信息包含在不同的表中。因?yàn)闉榱颂岣邤?shù)據(jù)庫(kù)的性能,在表中存儲(chǔ)的可能只是某些序號(hào),而不是具體的內(nèi)容。如在社保表中,存儲(chǔ)的是員工對(duì)應(yīng)的編號(hào),而不是員工的名字。所以,要得到這份報(bào)表的話,就可能需要關(guān)聯(lián)員工基本信息表、公司組織結(jié)構(gòu)表等表格,才能夠查詢到用戶所需要的內(nèi)容。

為此,就需要利用Join語(yǔ)句,把這些表格關(guān)聯(lián)起來(lái)。為了提高數(shù)據(jù)庫(kù)的查詢效率,這些用來(lái)關(guān)聯(lián)的字段,最好能夠建立索引。這可以顯著的提高查詢的速度。

建議四:在表的更新速度與查詢速度之間尋求一個(gè)平衡點(diǎn)。

眾所周知,索引本身并不影響數(shù)據(jù)庫(kù)的使用,其主要是為了提高數(shù)據(jù)庫(kù)的查詢效率。但是,由于當(dāng)數(shù)據(jù)庫(kù)的表中的數(shù)據(jù)更新的時(shí)候,包括記錄的增加、刪除、更改等等,都會(huì)對(duì)雖有的索引進(jìn)行更新。

很明顯,索引雖然可以提高查詢速度。但是,也會(huì)對(duì)一些表的更新操作產(chǎn)生不良的影響。當(dāng)在表中建立的索引越多,這個(gè)不利影響也會(huì)越大。故數(shù)據(jù)庫(kù)管理員在設(shè)置索引的時(shí)候,還需要注意,在這兩個(gè)之間需要一個(gè)均衡點(diǎn)。

按照一般的理論來(lái)說(shuō),當(dāng)某個(gè)表多數(shù)用來(lái)查詢、更新相對(duì)來(lái)說(shuō)比較上的話,則要多多采用索引。相反,當(dāng)某個(gè)表記錄更新居主導(dǎo),查詢相對(duì)來(lái)說(shuō)比較少的話,則不要建立太多的索引,避免對(duì)更新的速度差生不利影響。

在實(shí)際工作中,若某個(gè)表頻繁的被視圖所調(diào)用的話,則最好就好設(shè)置比較多的索引。在選擇數(shù)據(jù)庫(kù)索引時(shí)大家可以參考上文給出的四點(diǎn)建議,相信掌握了上文中的四點(diǎn)建議,大家一定能選擇一款合適的索引類型。

您可能感興趣的文章:
  • Oracle輕松取得建表和索引的DDL語(yǔ)句
  • Oracle中如何把表和索引放在不同的表空間里
  • oracle索引介紹(圖文詳解)
  • Oracle關(guān)于重建索引爭(zhēng)論的總結(jié)
  • Oracle使用強(qiáng)制索引的方法與注意事項(xiàng)
  • Oracle索引(B*tree與Bitmap)的學(xué)習(xí)總結(jié)
  • Oracle 如何創(chuàng)建和使用全文索引
  • oracle 索引不能使用深入解析
  • Oracle Index索引無(wú)效的原因與解決方法
  • oracle索引的測(cè)試實(shí)例代碼

標(biāo)簽:武漢 承德 固原 和田 青島 開封 周口 甘肅

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Oracle數(shù)據(jù)庫(kù)中建立索引的基本方法講解》,本文關(guān)鍵詞  Oracle,數(shù)據(jù)庫(kù),中,建立,索引,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Oracle數(shù)據(jù)庫(kù)中建立索引的基本方法講解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Oracle數(shù)據(jù)庫(kù)中建立索引的基本方法講解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    国产a视频| 亚洲 男人 天堂| 午夜精品国产自在现线拍| 欧美国产日韩在线| 国产网站麻豆精品视频| 欧美另类videosbestsex视频| 成人免费观看男女羞羞视频| 国产麻豆精品| 国产原创视频在线| 91麻豆精品国产自产在线| 亚洲第一色在线| 久草免费在线色站| 一级女性大黄生活片免费| 日韩在线观看免费| 国产视频一区二区在线观看| 日韩中文字幕一区| 欧美激情一区二区三区视频| 中文字幕一区二区三区精彩视频 | 午夜在线亚洲| 久久成人性色生活片| 亚欧视频在线| 美女免费黄网站| 国产激情一区二区三区| 国产极品精频在线观看| 天天做人人爱夜夜爽2020| 欧美a级片视频| 97视频免费在线| 91麻豆精品国产自产在线| 成人免费网站视频ww| 欧美国产日韩精品| 一级毛片视频播放| 欧美a级片视频| 久久久久久久久综合影视网| 亚洲天堂免费观看| 中文字幕一区二区三区精彩视频 | 美女免费黄网站| 九九精品在线播放| 欧美爱爱动态| 高清一级做a爱过程不卡视频| 天天做日日干| 国产91精品一区| 免费一级片在线观看| 国产伦久视频免费观看 视频 | 国产a视频| 国产91视频网| 精品国产一区二区三区国产馆| 欧美大片毛片aaa免费看| 黄色短视屏| 青草国产在线观看| 国产美女在线观看| 国产原创视频在线| 久久精品大片| 可以在线看黄的网站| 精品国产一区二区三区免费| 91麻豆国产级在线| 亚洲第一色在线| 欧美a级片视频| 999久久狠狠免费精品| 一级毛片视频在线观看| 欧美a免费| 日韩在线观看免费| 国产综合成人观看在线| 成人影院久久久久久影院| 国产欧美精品| 国产精品1024永久免费视频| 国产不卡在线看| 日韩在线观看视频网站| 四虎影视库国产精品一区| 麻豆网站在线免费观看| 成人a大片高清在线观看| 台湾美女古装一级毛片| 日本免费区| 午夜久久网| 国产视频一区二区在线观看| 午夜欧美福利| 国产视频一区二区在线观看| 亚洲天堂免费观看| 一级片片| 日韩在线观看免费| 99久久精品国产国产毛片| 国产美女在线观看| 欧美激情一区二区三区在线| 一本高清在线| 亚洲女人国产香蕉久久精品 | 国产国语对白一级毛片| 91麻豆精品国产高清在线| 黄色短视屏| 欧美国产日韩精品| 精品国产香蕉在线播出| 天天色色色| 欧美另类videosbestsex高清| 国产成a人片在线观看视频| 国产成人精品在线| 一级毛片视频在线观看| 日本特黄特色aaa大片免费| 久久久久久久男人的天堂| 国产麻豆精品高清在线播放| 九九精品在线播放| 精品视频一区二区三区| 亚洲 男人 天堂| 国产91精品一区| 日韩av东京社区男人的天堂| 日韩在线观看视频网站| 日韩avdvd| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 香蕉视频亚洲一级| 成人高清视频免费观看| 尤物视频网站在线| 黄色短视屏| 免费国产在线观看| 欧美日本韩国| 麻豆网站在线免费观看| 青青久热| 欧美1卡一卡二卡三新区| 国产高清在线精品一区二区| 成人免费高清视频| 你懂的日韩| 国产麻豆精品| 精品国产一区二区三区免费| 久久精品大片| 精品视频在线观看视频免费视频| 成人高清视频免费观看| 国产成a人片在线观看视频| 一级片片| 97视频免费在线| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 久久国产一久久高清| 欧美爱爱动态| 国产综合成人观看在线| 久久久久久久久综合影视网| 色综合久久天天综合观看| 亚洲 男人 天堂| 台湾美女古装一级毛片| 日韩欧美一二三区| 成人免费网站视频ww| 日韩中文字幕一区| 欧美激情在线精品video| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 99色视频在线观看| 国产视频网站在线观看| 午夜欧美福利| 美女免费精品视频在线观看| 高清一级做a爱过程不卡视频| 日韩在线观看视频网站| 青草国产在线观看| 国产一区二区精品久久91| 精品在线免费播放| 欧美大片aaaa一级毛片| 精品久久久久久中文字幕2017| 午夜在线影院| 日韩在线观看视频黄| 日韩一级精品视频在线观看| 99久久精品国产高清一区二区 | 国产一区二区精品久久91| 免费一级片在线观看| 国产91视频网| 日韩中文字幕在线亚洲一区| 91麻豆精品国产自产在线观看一区 | 黄色短视屏| 韩国三级视频在线观看| 青青久热| 一级毛片视频播放| 国产亚洲免费观看| 日韩一级黄色| 国产视频一区二区在线观看| 中文字幕一区二区三区精彩视频 | 日本特黄特色aaa大片免费| 99久久精品国产高清一区二区 | 久久成人性色生活片| 黄视频网站免费观看| 欧美另类videosbestsex高清| 黄视频网站在线看| 九九精品久久久久久久久| 日韩欧美一二三区| 国产a视频| a级黄色毛片免费播放视频| 欧美电影免费看大全| 九九国产| 日韩欧美一二三区| 沈樵在线观看福利| 日韩一级精品视频在线观看| 一级女性全黄生活片免费| 久久精品大片| 欧美a级成人淫片免费看| 99热精品一区| 国产一区二区精品久久91| 国产激情一区二区三区| 日韩专区一区| 国产一区免费观看| 久久99青青久久99久久| 精品美女| 国产网站在线| 国产韩国精品一区二区三区| 久久精品大片| 999精品在线| 免费一级片在线观看| 国产视频一区在线| 午夜在线影院| 青青青草影院|