Oracle テーブル一覧

テーブルの情報を参照するには、データディクショナリの
dba_tables や user_tables を確認する。

テーブル定義

SQL> desc dba_tables

 名前                        NULL?    型
 ------------------------- -------- ------------
 OWNER                     NOT NULL VARCHAR2(30)
 TABLE_NAME                NOT NULL VARCHAR2(30)
 TABLESPACE_NAME                    VARCHAR2(30)
 CLUSTER_NAME                       VARCHAR2(30)
 IOT_NAME                           VARCHAR2(30)
 STATUS                             VARCHAR2(8)
 PCT_FREE                           NUMBER
 PCT_USED                           NUMBER
 INI_TRANS                          NUMBER
 MAX_TRANS                          NUMBER
 INITIAL_EXTENT                     NUMBER
 NEXT_EXTENT                        NUMBER
 MIN_EXTENTS                        NUMBER
 MAX_EXTENTS                        NUMBER
 PCT_INCREASE                       NUMBER
 FREELISTS                          NUMBER
 FREELIST_GROUPS                    NUMBER
 LOGGING                            VARCHAR2(3)
 BACKED_UP                          VARCHAR2(1)
 NUM_ROWS                           NUMBER
 BLOCKS                             NUMBER
 EMPTY_BLOCKS                       NUMBER
 AVG_SPACE                          NUMBER
 CHAIN_CNT                          NUMBER
 AVG_ROW_LEN                        NUMBER
 AVG_SPACE_FREELIST_BLOCKS          NUMBER
 NUM_FREELIST_BLOCKS                NUMBER
 DEGREE                             VARCHAR2(30)
 INSTANCES                          VARCHAR2(30)
 CACHE                              VARCHAR2(15)
 TABLE_LOCK                         VARCHAR2(8)
 SAMPLE_SIZE                        NUMBER
 LAST_ANALYZED                      DATE
 PARTITIONED                        VARCHAR2(3)
 IOT_TYPE                           VARCHAR2(12)
 TEMPORARY                          VARCHAR2(1)
 SECONDARY                          VARCHAR2(1)
 NESTED                             VARCHAR2(3)
 BUFFER_POOL                        VARCHAR2(7)
 ROW_MOVEMENT                       VARCHAR2(8)
 GLOBAL_STATS                       VARCHAR2(3)
 USER_STATS                         VARCHAR2(3)
 DURATION                           VARCHAR2(15)
 SKIP_CORRUPT                       VARCHAR2(8)
 MONITORING                         VARCHAR2(3)
 CLUSTER_OWNER                      VARCHAR2(30)
 DEPENDENCIES                       VARCHAR2(8)
 COMPRESSION                        VARCHAR2(8)
 COMPRESS_FOR                       VARCHAR2(18)
 DROPPED                            VARCHAR2(3)
 READ_ONLY                          VARCHAR2(3)

sqlplus でテーブル一覧の取得

HOGE ユーザが所有するテーブル名の確認例

SQL> select owner,table_name from dba_tables where owner = 'HOGE';

OWNER TABLE_NAME
----- ----------
HOGE  TEST
HOGE  TEST2
HOGE  TEST3

ログインしているユーザの所有するテーブルだけでよければ、
データディクショナリの user_tables テーブルでも参照可能。

select table_name from user_tables;

他のユーザも確認したい場合は dba_tables テーブルを使用する。

関連記事