oracle如何快速创建索引

oracle如何快速创建索引,第1张

Script:Speed Up Large Index Create or Rebuild
>create index index_name on table_name(column_name) ;
只要你查询使用到建了索引字段,一般都会用到索引。
--创建表
create table aaa
(
a number,
b number
);
--创建索引
create index idx_a on aaa (a);
--使用索引
select from aaa where a=1;
这句查询就会使用索引 idx_a

方法如下:
Oracle中建立索引,会提高查询速度: create index 索引名 on 表名(列名);
例如:
create index index_userid on tbl_detail(userid);
如何找数据库表的主键字段的名称
SELECT
FROM user_constraints WHERE CONSTRAINT_TYPE='P' and table_name='AAA';
select from dba_cons_columns where CONSTRAINT_NAME='SYS_AAA';
Oracle 在创建主键(可以不加constraint SYS_AAA),会为库表自动创建索引,
索引的列为主键列。 并且当库表某些列名或者库表名改变时候,
Oracle自动创建的索引SYS_AAA,中的索引列也会自动更新(类似于视图),并且SYS_AAA会与名字更改后的库表还是保持索引关系。 关键系统库表: 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 cCONSTRAINT_NAME,ctable_name,ccCOLUMN_NAME from user_constraints c, user_cons_columns cc
where cconstraint_name=ccconstraint_name and ctable_name ='AAA' AND CCONSTRAINT_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


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13405727.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-30
下一篇 2023-07-30

发表评论

登录后才能评论

评论列表(0条)

保存