【轉】Oracle查詢用戶所有表


  1. 查詢所有用戶的表,視圖等
select * from all_tab_comments;

  2.  查詢本用戶的表,視圖等

select * from user_tab_comments;

  3.  查詢所有用戶的表的列名和注釋

select * from all_col_comments;

  4.  查詢本用戶的表的列名和注釋

select * from user_col_comments;

  5.  查詢所有用戶的表的列名等信息(詳細但是沒有備注)

select * from all_tab_columns;

  6.  查詢本用戶的表的列名等信息(詳細但是沒有備注)

select * from user_tab_columns;

  7.  一般使用1

select t.table_name,t.comments from user_tab_comments t;

  8. 一般使用2

select r1, r2, r3, r5
from (select a.table_name r1, a.column_name r2, a.comments r3
          from user_col_comments a),
       (select t.table_name r4, t.comments r5 from user_tab_comments t)
where r4 = r1;

 

如何在oracle中查詢所有用戶表的表名、主鍵名稱、索引、外鍵等

  1. 查找表的所有索引(包括索引名,類型,構成列)

 

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 = '要查詢的表';

 

  2.  查找表的主鍵(包括名稱,構成列)

SELECT CU.*
  FROM USER_CONS_COLUMNS CU, USER_CONSTRAINTS AU
 WHERE CU.CONSTRAINT_NAME = AU.CONSTRAINT_NAME
   AND AU.CONSTRAINT_TYPE = 'P'
   AND AU.TABLE_NAME = '要查詢的表';

  3.  查找表的唯一性約束(包括名稱,構成列)

SELECT COLUMN_NAME
  FROM USER_CONS_COLUMNS CU, USER_CONSTRAINTS AU
 WHERE CU.CONSTRAINT_NAME = AU.CONSTRAINT_NAME
   AND AU.CONSTRAINT_TYPE = 'U'
   AND AU.TABLE_NAME = '要查詢的表';

  4.  查找表的外鍵(包括名稱,引用表的表名和對應的鍵名,下面是分成多步查詢)

    第一步:

select * from user_constraints c where c.constraint_type = 'R' and c.table_name = '要查詢的表';

    第二步:查詢外鍵約束的列名

select * from user_cons_columns cl where cl.constraint_name = '外鍵名稱';

    第三步:查詢引用表的鍵的列名

select * from user_cons_columns cl where cl.constraint_name = '外鍵引用表的鍵名';

  5.  查詢表的所有列及其屬性

SELECT T.*, C.COMMENTS
  FROM USER_TAB_COLUMNS T, USER_COL_COMMENTS C
 WHERE T.TABLE_NAME = C.TABLE_NAME
   AND T.COLUMN_NAME = C.COLUMN_NAME
   AND T.TABLE_NAME = '要查詢的表';

 

 

                                  轉自:http://www.2cto.com/database/201212/174394.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM