標籤:
一、使用者
查看目前使用者的預設資料表空間
SQL> select username,default_tablespace from user_users;
USERNAME DEFAULT_TABLESPACE
------------------------------ ------------------------------
SCOTT USERS
查看目前使用者的角色
SQL> select * from user_role_privs;
USERNAME GRANTED_ROLE ADMIN_OPTION DEFAULT_ROLE OS_GRANTED
------------------------------ ------------------------------ ------------ ------------ ----------
SCOTT CONNECT NO YES NO
SCOTT DBA NO YES NO
SCOTT RESOURCE NO YES NO
查看目前使用者的系統許可權和表級許可權
SQL> select * from user_sys_privs;
USERNAME PRIVILEGE ADMIN_OPTION
------------------------------ ---------------------------------------- ------------
SCOTT UNLIMITED TABLESPACE NO
SQL> select * from user_tab_privs;
GRANTEE OWNER TABLE_NAME GRANTOR PRIVILEGE GRANTABLE HIERARCHY
------------------------------ ------------------------------ ------------------------------ ------------------------------ ---------------------------------------- --------- ---------
顯示當前會話所具有的許可權
SQL> select * from session_privs;
指定使用者所具有的系統許可權
SQL> select * from dba_sys_privs where grantee=‘SCOTT‘;
GRANTEE PRIVILEGE ADMIN_OPTION
------------------------------ ---------------------------------------- ------------
SCOTT UNLIMITED TABLESPACE NO
顯示特權使用者
SQL> select * from v$pwfile_users;
USERNAME SYSDBA SYSOPER SYSASM
------------------------------ ------ ------- ------
SYS TRUE TRUE FALSE
顯示使用者資訊(所屬資料表空間)
SQL> select default_tablespace,temporary_tablespace from dba_users where username=‘SCOTT‘;
DEFAULT_TABLESPACE TEMPORARY_TABLESPACE
------------------------------ ------------------------------
USERS TEMP
顯示使用者的profile
SQL> select profile from dba_users where username=‘SCOTT‘;
PROFILE
------------------------------
DEFAULT
二、表
查看目前使用者下所有的表
SQL> select * from user_tables;
SQL> select table_name from user_tables;
查看名稱包含EP字元的表
SQL> select table_name from user_tables where instr(table_name,‘EP‘)>0;
查看名稱包含log字元的表
SQL>select object_name,object_id from user_objects where instr(object_name,‘LOG‘)>0;
查看某表的建立時間
SQL> select object_name,created from user_objects where object_name=upper(‘&table_name‘);
查看某表的大小
SQL> select sum(bytes)/(1024*1024) as "size(M)" from user_segments where segment_name=upper(‘&table_name‘);
查看放在ORACLE記憶體裡的表
SQL> select table_name,cache from user_tables where instr(cache,‘Y‘) >0 ;
三、索引
查看索引的個數和類別
SQL> select table_name,index_name,index_type from user_indexes order by table_name;
查看索引被索引的欄位
SQL> select * from user_ind_columns where index_name=upper(‘&index_name‘);
查看索引的大小
SQL> select sum(bytes)/(1024*1024) as "size(M)" from user_segments where segment_name=upper(‘&index_name‘);
四、序號
查看序號,last_number是當前值
SQL> select * from user_sequences;
五、約束條件
查看某表的約束條件
SQL>select constraint_name, constraint_type,search_condition, r_constraint_name
from user_constraints where table_name = upper(‘&table_name‘);
六、預存程序和函數
查看函數和預存程序的狀態
SQL>select object_name,status from user_objects where object_type=‘FUNCTION‘;
SQL>select object_name,status from user_objects where object_type=‘PROCEDURE‘;
查看函數和過程的原始碼
SQL>select text from all_source where owner=user and name=upper(‘&plsql_name‘);
ORACLE-使用者常用資料字典的查詢使用方法