如何查询oracle中所有的schema名以及各个schema下的所有表名

2025-01-02 15:32:41
推荐回答(4个)
回答1:

如果是用该用户登录使用以下语句:

SELECT *

FROM USER_TABLES;

如果是用其他用户(在dba权限下):

SELECT *

FROM ALL_TABLES WHERE OWNER='USER_NAME'

扩展资料:

select * from all_tab_comments -- 查询所有用户的表,视图等。

select * from user_tab_comments -- 查询本用户的表,视图等。

select * from all_col_comments  --查询所有用户的表的列版名和权注释。

select * from user_col_comments -- 查询本用户的表的列名和注释。

select * from all_tab_columns --查询所有用户的表的列名等信息。

select * from user_tab_columns --查询本用户的表的列名等信息。

回答2:

select s.username "schema名",t.table_name "表名" from sys.dba_users s left join sys.dba_tables t on s.username=t.owner

--select username from sys.dba_users可以查出所有的schema
--select table_name from dba_tables where owner='schema名称';可以查出来schema对应的表名。

回答3:

不知道怎么有一下子全查出来 。
查 方案:应该是每个用户一个方案, select username from dba_users;
查表名:select table_name from dba_tables where owner='X';

回答4:

SELECTTABLE_NAMEFROMINFORMATION_SCHEMA.TABLESWHERETABLE_SCHEMA='数据库名'新建个视图将语句放入然后正常导出