如何查询Oracle数据库以显示Oracle数据库中所有表的名称?


当前回答

下面的查询只列出了所需的数据,而其他的答案给了我额外的数据,这只会让我感到困惑。

select table_name from user_tables;

其他回答

select * from all_all_tables

开头附加的“all”给出了额外的3列,分别是:

OBJECT_ID_TYPE
TABLE_TYPE_OWNER
TABLE_TYPE

执行以下命令:

显示Oracle数据库中的所有表

SELECT table_name FROM dba_tables;

显示当前用户拥有的表

SELECT table_name FROM user_tables;

显示当前用户可以访问的表

sql> SELECT table_name FROM all_tables

我正在寻找一个包含所有列名的列表,这些列名属于一个模式表,按照列id的顺序排序。

这是我使用的查询:-

SELECT COLUMN_NAME
FROM ALL_TAB_COLUMNS
WHERE OWNER = 'schema_owner_username' AND TABLE_NAME='table_name'
ORDER BY COLUMN_ID ASC;

为当前用户选择表的简单查询:

  SELECT table_name FROM user_tables;

试试下面的数据字典视图。

tabs
dba_tables
all_tables
user_tables