一、索引
1、查询索引
select * from user_ind_columns
where index_name in
(select index_name from user_indexes where table_name='大写的表名');
2、创建索引
create index 索引名 on 表名(字段名);
二、分区
1、查询分区表
select * from user_tab_partitions where table_name ='大写的表名';
2、查询表的某个分区数据
select * from 表名 partition(分区名称);
三、字段
1、修改字段名
alter table 表名 rename column 当前字段名 to 新字段名;
2、修改字段类型
alter table 表名 modify 字段名 类型;
四、约束
1、添加唯一约束
alter table 表名 add constraint 唯一约束名 unique (字段名);
2、删除约束
alter table 表名 drop constraint 约束名;
五、表
1、查询当前用户的表
select * from user_tables;
2、查询所有用户的表
select * from all_tables;
六、会话
1、按设备名(machine)统计持有的session数
select machine,count(*) from v$session
group by machine;
2、按用户名统计持有的session数
select username,count(*) from v$session
group by username;
七、序列
1、查询某个用户下的所有序列
select * from dba_sequences
where sequence_owner = '用户名'
八、sql
1、查询某个用户最近执行的sql
select * from v$sqlarea t
where t.parsing_schema_name in ('TEST')
order by t.last_active_time desc;
说明:参数 'TEST'为需要查询的用户。
v$sqlarea视图中的字段说明,可以查看这位老友的文章http://kamiff.iteye.com/blog/725343
九、连接数
1、查询数据库的最大连接数
select value from v$parameter where name ='processes';
2、查询数据库当前连接数
select count(*) from v$process;
十、查询某张表占用空间大小
SELECT segment_name AS TABLENAME,
BYTES B,
BYTES / 1024 KB,
BYTES / 1024 / 1024 MB
FROM user_segments
where segment_name = upper('表名');