程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> ORACLE索引

ORACLE索引

編輯:Oracle教程

ORACLE索引


索引:
	一種獨立於表的模式對象, 可以存儲在與表不同的磁盤或表空間中
	索引被刪除或損壞, 不會對表產生影響, 其影響的只是查詢的速度
	索引一旦建立, Oracle 管理系統會對其進行自動維護, 而且由 Oracle 管理系統決定何時使用索引。用戶不用在查詢語句中指定使用哪個索引
	在刪除一個表時,所有基於該表的索引會自動被刪除
	通過指針加速 Oracle 服務器的查詢速度
	通過快速定位數據的方法,減少磁盤 I/O
	
創建索引:
自動創建: 在定義 PRIMARY KEY 或 UNIQUE 約束後系統自動在相應的列上創建唯一性索引
手動創建: 用戶可以在其它列上創建非唯一的索引,以加速查詢

什麼時候創建索引?
	以下情況可以創建索引:
	列中數據值分布范圍很廣
	列經常在 WHERE 子句或連接條件中出現
	表經常被訪問而且數據量很大 ,訪問的數據大概占數據總量的2%到4%
	
什麼時候不要創建索引?
	下列情況不要創建索引:
	表很小
	列不經常作為連接條件或出現在WHERE子句中
	查詢的數據大於2%到4%
	表經常更新
	
使用索引的利弊:
   索引不需要用,只是說我們在進行查詢的時候,速度會更快。當然查的速度快了,插入的速度就會慢。
   因為插入數據的同時,還需要維護一個索引。
   
常用sql:
	--創建索引
	create index emp10_id_ix on t_emp10(employee_id);
	--刪除索引
	drop index emp10_id_ix;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved