テーブルの列(COLUMN)の情報を参照するには、
TAB_COLUMNSデータディクショナリビューを参照します。
TAB_COLUMNSデータディクショナリの種類
TAB_COLUMNSデータディクショナリビューには以下3種類があります。
DBA_TAB_COLUMNS | 全てのカラム情報を対象とする ※権限が必要 |
---|---|
ALL_TAB_COLUMNS | ログインユーザが参照可能なカラムを対象とする |
USER_TAB_COLUMNS | ログインユーザが保持するカラムを対象とする |
TAB_COLUMNSデータディクショナリの定義
TAB_COLUMNSデータディクショナリの定義です。
(DBA/ALL/USERの違いは、OWNER列のありなしのみです。)
列名 | 型 | メモ |
---|---|---|
OWNER | VARCHAR2(128) | 所有者 |
TABLE_NAME | VARCHAR2(128) | テーブル名 |
COLUMN_NAME | VARCHAR2(128) | 列名 |
DATA_TYPE | VARCHAR2(128) | 列のデータ型 |
DATA_TYPE_MOD | VARCHAR2(3) | |
DATA_TYPE_OWNER | VARCHAR2(128) | |
DATA_LENGTH | NUMBER | 列のサイズ |
DATA_PRECISION | NUMBER | NUMBER型の場合は10進数精度、FLOAT型の場合は2進精度、それ以外の型の場合はNULL |
DATA_SCALE | NUMBER | 小数点以下の桁数 |
NULLABLE | VARCHAR2(1) | Y:NULL許可 N:NULL不許可 |
COLUMN_ID | NUMBER | |
DEFAULT_LENGTH | NUMBER | |
DATA_DEFAULT | LONG | |
NUM_DISTINCT | NUMBER | |
LOW_VALUE | RAW(1000) | |
HIGH_VALUE | RAW(1000) | |
DENSITY | NUMBER | |
NUM_NULLS | NUMBER | |
NUM_BUCKETS | NUMBER | |
LAST_ANALYZED | DATE | |
SAMPLE_SIZE | NUMBER | |
CHARACTER_SET_NAME | VARCHAR2(44) | |
CHAR_COL_DECL_LENGTH | NUMBER | |
GLOBAL_STATS | VARCHAR2(3) | |
USER_STATS | VARCHAR2(3) | |
AVG_COL_LEN | NUMBER | |
CHAR_LENGTH | NUMBER | |
CHAR_USED | VARCHAR2(1) | |
V80_FMT_IMAGE | VARCHAR2(3) | |
DATA_UPGRADED | VARCHAR2(3) | |
HISTOGRAM | VARCHAR2(15) |
サンプル
TAB_COLUMNSデータディクショナリビューを検索するサンプルです。
1 2 3 |
SELECT COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE TABLE_NAME = 'M_USER'; |
メモ
- テーブル名、列名は大文字で指定してください。
- USER_TAB_COLUMNSは、「COLS」シノニムでもアクセス可能です。
(例)SELECT * FROM COLS;