Oracle之索引(Index)執行個體講解,oracle執行個體講解

來源:互聯網
上載者:User

Oracle之索引(Index)執行個體講解,oracle執行個體講解

Oracle之索引(Index)執行個體講解 - 基礎

索引(Index)是關聯式資料庫中用於存放表中每一條記錄位置的一種對象,主要目的是加快資料的讀取速度和資料的完整性檢查。索引的建立是一項技術性要求非常高的工作。

一般在資料庫設計階段就要考慮到如何設計和建立索引。


1. 建立索引

建立索引的文法:

CREATE [UNIQUE] INDEX [schema.] indexON [schema.] table (column [ASC | DESC], column [ASC | DESC]...)[CLUSTER schema.cluster][INITRANS n][MAXTRANS n][PCTFREE  n][STORAGE storage][TABLESPACE tablespace][NO SORT]

關鍵字說明:

  • UNIQUE: 該參數用來指明所建立的索引為唯一索引。
  • CLUSTER: 該參數為選擇性參數,用來指定一個聚簇(Hash cluster 不能建立索引)。
  • INITRANS, MAXTRANS: 為選擇性參數,指定初始和最大的事務入口數。
  • TABLESPACE: 索引的儲存資料表空間。
  • STORAGE: 儲存參數。
  • PCTFREE: 索引資料區塊閒置百分比。
  • NO SORT: 不排序(儲存時就按照升序進行排序,所以這裡指出不再排序)。

樣本:建立一張產品表(tb_product),為該表的product_id列建立索引,以便在使用到該列時提高查詢效率。

create table tb_product(  product_id              number, product_name            varchar2(100), product_type            varchar2(20), product_unit            varchar2(50), product_unit_price      number(10,4));
下面代碼用來在product_id列上建立唯一索引:

create unique index product_id_u1 on tb_product(product_id);


2. 修改索引

索引的修改主要由資料庫管理員完成,修改索引主要涉及到修改索引的儲存參數、重建索引、對無用的索引空間進行合并等。

修改索引的文法:

ALTER [UNIQUE] INDEX [user.] indexINITRANS nMAXTRANS nREBUILD [STORAGE <storage>]
說明:

  • INITRANS n: 表示一個塊內同時訪問的初始事務的入口數,n為十進位整數。
  • MAXTRANS  n: 表示一個塊內同時訪問的最大事務入口數,n為十進位整數。
  • REBUILD: 表示根據原來的索引結構重建立立索引,也就是重新對錶進行全表掃描以後建立索引資料。
  • STORAGE <storage>: 表示儲存資料。

樣本:

使用ALTER INDEX語句修改索引參數:

ALTER INDEX product_id_u1 REBUILD STORAGE  ( INITIAL 1M NEXT 512K );

使用ALTER INDEX語句修改索引為逆向索引:

ALTER INDEX product_id_u1 REBUILD REVERSE;

使用ALTER INDEX語句合并索引空間:

ALTER INDEX product_id_u1 COALESCE;


3. 刪除索引

可以使用DROP語句刪除索引。

DROP INDEX schema.index;

註:如果表結構被刪除,則與該表相關聯的索引也同時被刪除。


---------------------------------------------------------------------------------------------------------

如果您們在嘗試的過程中遇到什麼問題或者My Code有錯誤的地方,請給予指正,非常感謝!

連絡方式:david.louis.tian@outlook.com

著作權@:轉載請標明出處, 否則追究法律責任!
----------------------------------------------------------------------------------------------------------


相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.