create index 索引名 on tbl_name (A1,B1).
成都創(chuàng)新互聯(lián)公司長期為近1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為連城企業(yè)提供專業(yè)的網(wǎng)站建設(shè)、網(wǎng)站制作,連城網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
創(chuàng)建索引的目的是為了在某些字段上查詢更快,而添加的一些預(yù)地址。
1.服務(wù)器及工具
數(shù)據(jù)庫服務(wù)器:2013年最新版本Oracle 12C。
應(yīng)用服務(wù)器:Oracle Application Server。
開發(fā)工具:OracleJDeveloper,Oracle Designer,Oracle Developer,等等。
2.企業(yè)應(yīng)用軟件
企業(yè)資源計劃(ERP)軟件。已有10年以上的歷史。2005年,并購了開發(fā)企業(yè)軟件的仁科軟件公司(PeopleSoft)以增強在這方面的競爭力。
客戶關(guān)系管理(CRM)軟件。自1998年開始研發(fā)這種軟件。2005年,并購了開發(fā)客戶關(guān)系管理軟件的希柏軟件公司(Siebel)。
3. Oracle職業(yè)發(fā)展力計劃(Oracle WDP)
Oracle WDP 全稱為Oracle Workforce Development Program,是Oracle (甲骨文)公司專門面向?qū)W生、個人、在職人員等群體開設(shè)的職業(yè)發(fā)展力課程。Oracle的技術(shù)廣泛應(yīng)用于各行各業(yè),其中電信、電力、金融、政府及大量制造業(yè)都需要Oracle技術(shù)人才,Oracle公司針對職業(yè)教育市場在全球推廣的項目,其以低廉的成本給這部分人群提供Oracle技術(shù)培訓(xùn),經(jīng)過系統(tǒng)化的實訓(xùn),讓這部分人群能夠迅速掌握Oracle最新的核心技術(shù),并能勝任企業(yè)大型數(shù)據(jù)庫管理、維護、開發(fā)工作。
對三個字段建立索引:\x0d\x0acreate index Stuname on student(name);\x0d\x0acreate index Stusex on student(sex);\x0d\x0acreate index Stugrade on student(grade);\x0d\x0a注意的問題,考慮是不是要建立唯一索引(unique),如果有學(xué)號的話,可以考慮建立唯一索引引。\x0d\x0a再就是對經(jīng)常查詢,但又相對穩(wěn)定的可以建立聚簇索引,提高查詢效率
create index index_name on table_name(column_name) ;\x0d\x0a只要你查詢使用到建了索引的字段,一般都會用到索引。 \x0d\x0a \x0d\x0a--創(chuàng)建表\x0d\x0acreate table aaa\x0d\x0a(\x0d\x0a a number,\x0d\x0a b number\x0d\x0a);\x0d\x0a--創(chuàng)建索引\x0d\x0acreate index idx_a on aaa (a);\x0d\x0a--使用索引\x0d\x0aselect * from aaa where a=1;\x0d\x0a這句查詢就會使用索引 idx_a
創(chuàng)建索引語法:
CREATE[UNIQUE]|[BITMAP]INDEXindex_name
--unique表示唯一索引
ONtable_name([column1[ASC|DESC],column2
--bitmap,創(chuàng)建位圖索引
[ASC|DESC],?]|[express])[TABLESPACEtablespace_name][PCTFREEn1]
--指定索引在數(shù)據(jù)塊中空閑空間
[STORAGE(INITIALn2)][NOLOGGING]
--表示創(chuàng)建和重建索引時允許對表做DML操作,默認情況下不應(yīng)該使用
[NOLINE][NOSORT];
--表示創(chuàng)建索引時不進行排序,默認不適用,如果數(shù)據(jù)已經(jīng)是按照該索引順序排列的可以使用
擴展資料:
1、如果有兩個或者以上的索引,其中有一個唯一性索引,而其他是非唯一,這種情況下oracle將使用唯一性索引而完全忽略非唯一性索引
2、至少要包含組合索引的第一列(即如果索引建立在多個列上,只有它的第一個列被where子句引用時,優(yōu)化器才會使用該索引)
3、小表不要簡歷索引
4、對于基數(shù)大的列適合建立B樹索引,對于基數(shù)小的列適合簡歷位圖索引
5、列中有很多空值,但經(jīng)常查詢該列上非空記錄時應(yīng)該建立索引
6、經(jīng)常進行連接查詢的列應(yīng)該創(chuàng)建索引
7、使用createindex時要將最常查詢的列放在最前面
8、LONG(可變長字符串?dāng)?shù)據(jù),最長2G)和LONGRAW(可變長二進制數(shù)據(jù),最長2G)列不能創(chuàng)建索引
9、限制表中索引的數(shù)量(創(chuàng)建索引耗費時間,并且隨數(shù)據(jù)量的增大而增大;索引會占用物理空間;當(dāng)對表中的數(shù)據(jù)進行增加、刪除和修改的時候,索引也要動態(tài)的維護,降低了數(shù)據(jù)的維護速度)
方法如下:
Oracle中建立索引,會提高查詢速度: create index 索引名 on 表名(列名);
例如:
create index index_userid on tbl_detail(userid);
如何找數(shù)據(jù)庫表的主鍵字段的名稱?
SELECT * FROM user_constraints WHERE CONSTRAINT_TYPE='P' and table_name='AAA'; select * from dba_cons_columns where CONSTRAINT_NAME='SYS_AAA';
Oracle 在創(chuàng)建主鍵(可以不加constraint SYS_AAA),會為庫表自動創(chuàng)建索引,
索引的列為主鍵列。 并且當(dāng)庫表某些列名或者庫表名改變時候,
Oracle自動創(chuàng)建的索引SYS_AAA,中的索引列也會自動更新(類似于視圖),并且SYS_AAA會與名字更改后的庫表還是保持索引關(guān)系。 關(guān)鍵系統(tǒng)庫表: desc dba_constraints desc dba_cons_columns
desc dba_indexes desc dba_ind_columns desc DBA_TAB_COLUMNS
例子1:更改庫表的列名
ALTER TABLE AAA RENAME COLUMN ID TO AAA_ID; create table AAA ( ID NUMBER(8), NAME CHAR(20),
constraint SYS_AAA primary key(ID) );
//查找約束名字
select c.CONSTRAINT_NAME,c.table_name,cc.COLUMN_NAME from user_constraints c, user_cons_columns cc
where c.constraint_name=cc.constraint_name and c.table_name ='AAA' AND C.CONSTRAINT_TYPE='P';
CONSTRAINT_NAME TABLE_NAME COLUMN_NAME
SYS_AAA AAA ID
//查找索引
select index_name,index_type,uniqueness from user_indexes where table_name='AAA'; INDEX_NAME INDEX_TYPE UNIQUENES
索引建立代碼:
CREATE?INDEX命令語法:
CREATE?INDEX
CREATE?[unique]?INDEX?[user.]index
ON?[user.]table?(column?[ASC?|?DESC]?[,column
[ASC?|?DESC]?]?...?)
[CLUSTER?[scheam.]cluster]
[INITRANS?n]
[MAXTRANS?n]
[PCTFREE?n]
[STORAGE?storage]
[TABLESPACE?tablespace]
[NO?SORT]
Advanced
其中:
schema?ORACLE模式,缺省即為當(dāng)前帳戶
index?索引名
table?創(chuàng)建索引的基表名
column?基表中的列名,一個索引最多有16列,long列、long?raw
列不能建索引列
DESC、ASC?缺省為ASC即升序排序
CLUSTER?指定一個聚簇(Hash?cluster不能建索引)
INITRANS、MAXTRANS?指定初始和最大事務(wù)入口數(shù)
Tablespace?表空間名
STORAGE?存儲參數(shù),同create?table?中的storage.
PCTFREE?索引數(shù)據(jù)塊空閑空間的百分比(不能指定pctused)
NOSORT?不(能)排序(存儲時就已按升序,所以指出不再排序)