溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle 11g R2 索引

發(fā)布時間:2020-08-17 20:48:14 來源:網(wǎng)絡 閱讀:236 作者:初心WHQ 欄目:關系型數(shù)據(jù)庫

索引是oracle提供的一個對象,提供了一種快速訪問數(shù)據(jù)的途徑,提高了數(shù)據(jù)庫的檢索性能。索引使數(shù)據(jù)庫程序無需對整個表進行全表掃描,就可以在其中找到所需要的數(shù)據(jù),就想書的目錄,可以通過他快速查找所需信息,無需閱讀整本書。

oracle的數(shù)據(jù)庫管理系統(tǒng)在訪問數(shù)據(jù)時使用以下3種訪問方法;
1.全表掃描

2.通過ROWID

3.使用索引

索引的分類:

1,B樹索引結構

索引的頂部為根,其中包含指向下一級索引的項。下一級為分支塊,分支塊又指向索引中下一級的塊,最低一級的塊稱為葉節(jié)點,其中包含指向表數(shù)據(jù)行的索引項。葉節(jié)點為雙向連接,有助于按關鍵字值得升序和降序掃描索引。

創(chuàng)建普通索引
創(chuàng)建普通索引的語法

create [unique] index 索引名稱 on 表名(列名)[tablespace表空間名稱]

[unique]用于指定唯一索引,默認情況下為非唯一索引

[tablespace]為索引指定表空間

練習環(huán)境
Oracle 11g R2 索引
在雇員EMP表中,在雇員名稱列創(chuàng)建B樹索引,oracle創(chuàng)建的普通索引如果沒有說

明類型就是B樹索引
Oracle 11g R2 索引
查看剛剛創(chuàng)將的索引 EMP_NAME_IDX
Oracle 11g R2 索引
創(chuàng)建唯一索引和非唯一索引
唯一索引:保證定義索引的列中沒有任何重復值,唯一索引的索引關鍵字只能指向表中的一行。

非唯一索引:定義索引的列中可以有重復值

在薪水級別salgrade表中,為級別編號(grade)列創(chuàng)建唯一索引
Oracle 11g R2 索引
反向鍵索引
與常規(guī)B樹索引相反,反向鍵索引在保持順序的同時,反轉索引列的字節(jié)。反向鍵索引通過反轉索引鍵的數(shù)據(jù)值,使得索引的修改平均分布到整個索引樹上,主要應用多個實例可同時訪問同一個數(shù)據(jù)庫的場景中。使用反向鍵索引將索引插入操作分散在多個索引塊鍵,如果使用B數(shù)索引的情況下,由于索引關鍵字在索引樹中的位置相近而處于同一個索引塊中,多個實例同時更新時會發(fā)生沖突,從而導致I/O訪問上的瓶頸。

語法如下:

CREATE index 索引名稱 on 表名(列名)REVERSE;
位圖索引
位圖索引適用于低基數(shù)的列,即該列的值是有限的幾個,例如雇員表中的工種(job)列,即便是幾百萬條雇員記錄,工種也是有限的。JOB列可以作為位圖索引

位圖索引的優(yōu)點:

相對B樹索引而言,基于位圖索引列的查詢可以減少響應時間

相比其他索引技術,位圖索引占用空間有所減少

位圖索引不應當在頻繁發(fā)生INSERT,update,delete操作的表上使用,這是因為單個位圖索引項指向表的很多數(shù)據(jù)行,當修改索引項時需要將其指向的數(shù)據(jù)行全部鎖定,這會嚴重降低數(shù)據(jù)庫的并發(fā)處理能力。位圖索引適用于數(shù)據(jù)倉庫和決策支持系統(tǒng)中.

在雇員表(emp)表中,為工種(job)列創(chuàng)建位圖索引
Oracle 11g R2 索引
在雇員表(emp)中,為雇員名稱(ename)列創(chuàng)建大寫函數(shù)索引

基于函數(shù)的索引
Oracle 11g R2 索引
查看索引列相關的信息:索引名,表名,索引列
Oracle 11g R2 索引
維護索引
重建索引:

索引需要維護,如果建立了索引的表中有大量的刪除和插入操作,會使得索引很大,因為刪除操作后,刪除值得索引空間不能被自動重新使用。對于大表和DML操作頻繁的表,索引的維護是很重要的。ORACLE提供了REBUILD指令來重建索引,使索引空間可以重用刪除值所占用的空間,使索引更加進奏。
Oracle 11g R2 索引
在重建索引時,也可以修改索引的表空間
Oracle 11g R2 索引
Oracle 11g R2 索引
合并索引碎片

合并索引碎片可以釋放部分磁盤空間,是索引維護的一種重要方式,也是維護磁盤空間的方式
Oracle 11g R2 索引
刪除索引

DROP INDEX語句刪除索引

刪除雇員表中的INDEX_BIT_JOB位圖索引
Oracle 11g R2 索引
如果對此有興趣,請掃下面二維碼免費獲取更多詳情
Oracle 11g R2 索引

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI