程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle用戶常用數據字典的查詢

Oracle用戶常用數據字典的查詢

編輯:Oracle數據庫基礎
下面按類別列出一些Oracle用戶常用數據字典的查詢使用方法。

  一、用戶

  查看當前用戶的缺省表空間


  SQL>SELECT username,default_tablespace FROM user_users;

  查看當前用戶的角色


  SQL>SELECT * FROM user_role_privs;

  查看當前用戶的系統權限和表級權限


  SQL>SELECT * FROM user_sys_privs; 
  SQL>SELECT * FROM user_tab_privs;

  二、表

  查看用戶下所有的表


  SQL>SELECT* FROM user_tables;

  查看名稱包含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 index_name,index_type,table_name 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 view_name FROM user_vIEws;

  查看創建視圖的select語句


  SQL>SELECT view_name,text_length FROM user_vIEws; 
  SQL>SET long 2000;

 //說明:可以根據視圖的text_length值設定set long 的大小


  SQL>SELECT text FROM user_views WHERE view_name=UPPER('&vIEw_name');

  六、同義詞

  查看同義詞的名稱


  SQL>SELECT * FROM user_synonyms;

  七、約束條件

  查看某表的約束條件


  SQL>SELECT constraint_name, constraint_type,search_condition, r_constraint_name 
  FROM user_constraints WHERE table_name = UPPER('&table_name');

  //注意,表名一定是大寫才行


  SQL>SELECT c.constraint_name,c.constraint_type,cc.column_name 
  FROM user_constraints c,user_cons_columns cc 
  WHERE c.owner = upper('&table_owner') 
  AND c.table_name = UPPER('&table_name') 
  AND c.owner = cc.owner and c.constraint_name = cc.constraint_name 6 ORDER BY cc.position;

  八、存儲函數和過程

  查看函數和過程的狀態


  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');

  九、觸發器

  查看觸發器


  SET long 50000; 
  SET heading off; 
  SET pagesize 2000; 
  SELECT 
  'create or replace trigger ' || 
  trigger_name || '' || chr(10)|| 
  DECODE( SUBSTR( trigger_type, 1, 1 ), 
  'A', 'AFTER', 'B', 'BEFORE', 'I', 'INSTEAD OF' ) || 
  chr(10) || 
  triggering_event || chr(10) || 
  'ON ' || table_owner || '.' || 
  table_name || '' || chr(10) || 
  DECODE( instr( trigger_type, 'EACH ROW' ), 0, null, 
  'FOR EACH ROW' ) || chr(10) , 
  trigger_body 
  FROM user_triggers;

 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved