oracle怎么看索引,oracle怎么看索引是正序还是倒序

Oracle查看表索引、主键、外键、约束

查看表索引、主键、外键、约束

站在用户的角度思考问题,与客户深入沟通,找到合水网站设计与合水网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站制作、成都网站制作、企业官网、英文网站、手机端网站、网站推广、申请域名虚拟主机、企业邮箱。业务覆盖合水地区。

(包括索引名,类型,构成列)

SELECT T.*, I.INDEX_TYPE

FROM USER_IND_COLUMNS T,USER_INDEXES I

WHERE T.INDEX_NAME = I.INDEX_NAME

AND T.TABLE_NAME = I.TABLE_NAME

AND T.TABLE_NAME = 'ORG_DLF' ----指定表

AND T.TABLE_OWNER= 'ODSRPT_SIT2'; ----指定用户

(包括名称,构成列)

SELECT CU.*

FROM DBA_CONS_COLUMNS CU, DBA_CONSTRAINTS AU

WHERE CU.CONSTRAINT_NAME = AU.CONSTRAINT_NAME

AND AU.CONSTRAINT_TYPE = 'P'

AND AU.TABLE_NAME = 'LOAN_APPLICATION_FEE' -----指定表名

AND CU.OWNER='ODSRPT_SIT2'; -----指定用户名

(包括表名称,构成列)

SELECT CU.COLUMN_NAME,AU.TABLE_NAME

FROM DBA_CONS_COLUMNS CU, DBA_CONSTRAINTS AU

WHERE CU.CONSTRAINT_NAME = AU.CONSTRAINT_NAME

AND AU.CONSTRAINT_TYPE = 'U'

AND AU.OWNER='RPT_UAT2' -----指定用户名

AND AU.TABLE_NAME = 表名 ; -----指定表名

Select a.Owner 外键拥有者,

a.Table_Name 外键表,

c.Column_Name 外键列,

b.Owner 主键拥有者,

b.Table_Name 主键表,

d.Column_Name 主键列,

c.Constraint_Name 外键名,

d.Constraint_Name 主键名

From User_Constraints a,

 user_Constraints b,

user_Cons_Columns c, --外键表

user_Cons_Columns d --主键表

Where a.r_Constraint_Name = b.Constraint_Name

And a.Constraint_Type = 'R'

And b.Constraint_Type = 'P'

And a.r_Owner = b.Owner

And a.Constraint_Name = c.Constraint_Name

And b.Constraint_Name = d.Constraint_Name

And a.Owner = c.Owner

And a.Table_Name = c.Table_Name

And b.Owner = d.Owner

And b.Table_Name = d.Table_Name;

怎么查看索引oracle,建索引

一、查看和建立索引

select * from user_indexes where table_name = 'student'

create index i_student_num on student(num)

二、使用索引的注意点

①类型匹配

若student中num列是varchar类型,语句select * from student where num = 100

该语句被转化为select * from student where to_number(num) = 100,该列的索引就失效了。

②避免索引列参与计算

索引失效:select * from student where num * 10 10000

索引有效:select * from student where num 10000 / 10

③不要对索引列使用IS NULL或IS NOT NULL

原则上对某一个列建立索引的时候,该列就不应该允许为空。

索引失效:select * from student where num is null

oracle 如何查看某个表是否已有索引

oracle查看有效索引是这个:

select status,T.* from user_indexes T

where table_name='TABLE1'

最好弄个图像界面软件,就能知道,比如:PL/SQL Developer

oracle数据库中如何查看已经创建的索引信息?

oracle对于数据库中的表信息,存储在系统表中。查询已创建好的表索引,可通过相应的sql语句到相应的表中进行快捷的查询:

1. 根据表名,查询一张表的索引

select * from user_indexes where table_name=upper('表名');

2. 根据索引号,查询表索引字段

select * from user_ind_columns where index_name=('索引名');

3.根据索引名,查询创建索引的语句

select dbms_metadata.get_ddl('INDEX','索引名', ['用户名']) from dual ; --['用户名']可省,默认为登录用户

PS:dbms_metadata.get_ddl还可以得到建表语句,如:

SELECT DBMS_METADATA.GET_DDL('TABLE','表名', ['用户名']) FROM DUAL ; //取单个表的建表语句,['用户名']可不输入,默认为登录用户

SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name) FROM USER_TABLES u; //取用户下所有表的建表语句

当然,也可以用pl/sql developer工具来查看相关的表的各种信息。

Oracle下查看索引的语句

1. 查询一张表里面索引 

select*from user_indexes where table_name=upper('bills');

2. 查询被索引字段 

select* from user_ind_columns where index_name=('in_bills') and table_name='表名';

select* from user_ind_columns where table_name='MPI_DEMOGRAPHICINFO';

3. 给某一字段创建索引 

create index in_bills on bills(account_id);

删除约束语句格式:

alter table 表名 drop CONSTRAINT 主键约束 名;

如:

alter table 修课表 drop CONSTRAINT pk_xh_kc;

如何查询Oracle数据库中已经创建的索引?

根据表名,查询一张表的索引:

select * from user_indexes where table_name=upper('表名')。

根据索引号,查询表索引字段:

select * from user_ind_columns where index_name=('索引名')。

根据索引名,查询创建索引的语句:

select dbms_metadata.get_ddl('INDEX','索引名', ['用户名']) from dual ; --['用户名']可省,默认为登录用户。

Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统。

甲骨文股份有限公司(Oracle)是全球大型数据库软件公司,总部位于美国加州红木城的红木岸。在2008年,甲骨文股份有限公司是继Microsoft及IBM后,全球收入第三多的软件公司。


当前标题:oracle怎么看索引,oracle怎么看索引是正序还是倒序
文章URL:http://myzitong.com/article/dsededh.html