- 查询所有用户的表,视图等
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, r5from (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 = '要查询的表';
转自: