====== テーブル操作 ======
===== テーブル一覧の確認 =====
[[database:oracledb|一つ上へ]]
SELECT table_name FROM all_tables;
===== カラム一覧の確認 =====
カラム一覧は、以下のコマンドで取得可能
SELECT COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE TABLE_NAME = '<テーブル名>';
各種定義まで確認したい場合は以下のカラムを指定する。
^カラム名^説明^
|OWNER|オブジェクトの所有者(スキーマ名)|
|TABLE_NAME|テーブル名|
|COLUMN_NAME|カラム名|
|DATA_TYPE|カラムのデータ型|
|DATA_LENGTH|データ型の長さ(バイト単位)|
|DATA_PRECISION|数値データ型の精度|
|DATA_SCALE|数値データ型のスケール(小数点以下の桁数)|
|NULLABLE|カラムがNULL値を許可するかどうか("Y"または"N")|
|COLUMN_ID|カラムの順序ID|
|DEFAULT_LENGTH|デフォルト値の長さ(バイト単位)|
|DATA_DEFAULT|カラムのデフォルト値|
===== テーブル定義の確認 =====
DESCRIBE
===== テーブルスペースのサイズを確認 =====
テーブルスペースの情報を取得するには、''dba_data_files''テーブルを参照する。
^カラム^説明^
|tablespace_name|表領域名|
|bytes|表領域のデータの大きさ(byte)|
|autoextensible|自動拡張設定|
|maxbytes|最大サイズ|
|file_name|ファイルサイズ|
SELECT tablespace_name, SUM(bytes)/1024/1024 AS size_mb
FROM dba_data_files
WHERE tablespace_name = '<デフォルトの表領域名>'
GROUP BY tablespace_name;
SELECT tablespace_name, autoextensible, bytes/1024/1024 AS size_mb, maxbytes/1024/1024 AS max_size_mb
FROM dba_data_files
WHERE tablespace_name NOT IN ('SYSTEM', 'SYSAUX') -- 必要に応じて対象の表領域を指定する
ORDER BY tablespace_name;