oracle

データ・ディクショナリ

DBA_OBJECTS

DBA_OBJECTSでオブジェクトのタイプや状態を確認できます データベースには様々なオブジェクト(テーブル、ビュー、シノニム、etc)が存在しますが、これら全ての一覧を確認できます。DBA_OBJECTSを参照する事で、そのオブジェクト...
データ・ディクショナリ

DBA_SEGMENTS 

DBA_SEGMENTSで各種セグメントのサイズを確認できます データベースの中には様々なオブジェクト(テーブル、インデックス、ビュー、シノニム、etc)が存在し、オブジェクトは実体(記憶域)を割り当てられるもの(テーブル、インデックス等)...
データ・ディクショナリ

Oracle テーブル一覧

DBA_TABLES テーブル一覧 基本的にはDBA_TABLESを参照すれば良いです。注意点としてそのまま一覧出力した場合、マテリアライズド・ビュー(マテビュー本体に加え、マテビュー用ログテーブルも)が含まれる点です。またテーブル毎の表領...
データ・ディクショナリ

Oracle ユーザ一覧

DBA_USERS DBA_USERSを参照する事でユーザ一覧を出力できます。COMMON='NO'と条件をつけているのは、システムデフォルトで作成されるユーザを外すためです。この項目は12c以降に追加されているのですが、個人的には結構重宝...
oracle

利用不可状態のINDEXに対しリビルドを実行

UNUSABLE状態のインデックスは利用できません 断片化対策等でテーブルのMOVEを行った場合、PKを含めインデックスは「UNUSABLE」となりそのままでは利用できません。利用できるようにするにはインデックスのリビルドが必要になります。...
oracle

TIMESTAMP型の引き算で経過時間を表示する

DATE型と異なり経過時間を秒で表現するにはひと手間(EXTRACTファンクション)かけて導出する事になります。 検証SQL select c1 ,to_char(x.ELAPSED) as 経過日時分秒 ,EXTRACT(SECOND F...
oracle

Oracle TIMESTAMP型の計算(XX秒後、XX日後)

TIMESTAMP型においてXX秒後、XX秒前、XX分後というのは少し面倒です。NUMTODSINTERVAL()ファンクションを使って計算します。 利用例 -- 1.45秒後 systimestamp + NUMTODSINTERVAL(...
データ・ディクショナリ

DBA_MVIEW_LOGS マテビュ―ログ一覧

マテビュ―ログ一覧 高速リフレッシュ(差分)するにはマスターテーブルに対する更新を情報を保存するテーブル「マテリアライズド・ビュー・ログ」が必要になります。このDBA_MVIEW_LOGSを参照する事でログテーブルとマスターテーブルの関係を...
データ・ディクショナリ

DBA_MVIEWSでマテリアライズド・ビュー一覧

DBA_MVIEWS でマテリアライズド・ビュー一覧 マテビューはDBA_MVIEWSにて確認できます。 マテビュー一覧出力SQL select t.OWNER,t.MVIEW_NAME,t.MASTER_LINK,t.REFRESH_MO...
oracle

ランダム文字列、乱数の生成

DBMS_RANDOM.STRING()の第一パラメータで指定できる文字は以下の通り(大文字、小文字どちら指定しても同じ意味となる) U   大文字アルファベットL   小文字アルファベットA   大、小文字が混在アルファベット文字X   ...