ヘッダーをスキップ
Oracle Rdb SQLリファレンス・マニュアル
リリース7.2
E06178-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

I.6.12 RDB$INDICES

RDB$INDICESシステム表には、データベースの索引に関する情報が格納されます。次の表は、RDB$INDICESシステム表の列に関する情報を示しています。

列名 データ型 概要説明
RDB$INDEX_NAME char(31) 一意の索引名。
RDB$RELATION_NAME char(31) 索引が使用されている表の名前。
RDB$UNIQUE_FLAG integer 次のように、索引で重複値が許可されているかどうかを示す値。

  • 0

    重複値が許可されている場合。

  • 1

    重複値が許可されていない場合。

RDB$ROOT_DBK char(8) 索引のベースへのポインタ。
RDB$INDEX_ID integer 索引の識別子。
RDB$FLAGS integer フラグ。
RDB$SEGMENT_COUNT integer キーのセグメントの数。
RDB$DESCRIPTION byte varying この索引に関するユーザー指定の説明。
RDB$EXTENSION_PARAMETERS byte varying この索引のNODE SIZE値、PERCENT FILL値、圧縮アルゴリズムおよび圧縮ランレングスが格納される。また、今後の使用のために予約される。
RDB$CARDINALITY bigint 非一意索引の一意のエントリの数。一意索引の場合の数は0。
RDB$SECURITY_CLASS char(20) 今後の使用のため予約。
RDB$CREATED date vms 索引の作成時に設定される。
RDB$LAST_ALTERED date vms SQL ALTER INDEX文の使用時に設定される。
RDB$INDEX_CREATOR char(31) この索引の作成者。
RDB$KEY_CLUSTER_FACTOR bigint(7) ソート索引: レベル1の索引ノードと重複ノード連鎖の横断時に発生するクランプ変更の数の、索引のキーの数に対する比率。この統計は、索引全体の横断に基づく。したがって、現在のキーの最後の重複ノードと次のキーの最初の重複ノードがクランプ変更について比較される。

ハッシュ索引: システム・レコードからハッシュ・バケットへの移動によるハッシュ・バケットのオーバーフロー時(断片化されている場合)、および各キーの重複ノード連鎖の横断時に発生するクランプ変更の平均数。この統計は、それぞれのキーの横断に基づく。

RDB$DATA_CLUSTER_FACTOR bigint(7) ソート索引: すべてのキーの重複連鎖の隣接したdbkey間で発生するクランプ変更の数の、索引のキーの数に対する比率。一意索引では、隣接したキーのdbkeyがクランプ変更について比較される。この統計は、索引全体の横断に基づく。したがって、現在のキーの最後のdbkeyと次のキーの最初のdbkeyがクランプ変更について比較される。

ハッシュ索引: 各キーの重複連鎖の隣接したdbkey間で発生するクランプ変更の平均数。一意索引の場合、この値は常に1になる。この統計は、それぞれのキーの横断に基づく。

RDB$INDEX_DEPTH integer ソート索引: Bツリーの深さ。

ハッシュ索引: この列はハッシュ索引では使用されず、値は0のままになる。

RDB$FLAGSは、RDB$INDICESシステム表のフラグを示します。

ビット位置 説明
0 ハッシュ索引。
1 索引セグメントは、マッピング値が圧縮されている数値。
2 順序付きハッシュ索引。(ビットがクリアされている場合は分散ハッシュ。)
3 今後の使用のため予約。
4 ランレングス圧縮。
5 索引は無効または遅延可能。
6 作成ペンディング(遅延可能)。
7 今後の使用のため予約。
8 今後の使用のため予約。
9 今後の使用のため予約。
10 今後の使用のため予約。
11 オンの場合、重複は圧縮される。
12 ランク付きソート索引。
13 プリフィックスのカーディナリティが無効。
14 接頭辞カーディナリティに完全なコレクション・アルゴリズムを使用。
15 SET FLAGS 'AUTO_INDEX'が有効なときに制約に対して生成された索引。

I.6.13 RDB$INTERRELATIONS

RDB$INTERRELATIONSシステム表には、データベース・オブジェクトの相互依存性を示す情報が格納されます。RDB$INTERRELATIONS表を使用すると、あるオブジェクトが削除可能であるかどうか、またはデータベース内の他のオブジェクトがそのオブジェクトの存在に依存しているかどうかを確認できます。次の表は、RDB$INTERRELATIONSシステム表の列に関する情報を示しています。

列名 データ型 概要説明
RDB$OBJECT_NAME char(31) データベース内の他のエンティティによって使用されているため、削除または変更できないオブジェクトの名前。
RDB$SUBOBJECT_NAME char(31) データベース内の別のエンティティによって使用されているため、削除または変更できない関連サブオブジェクトの名前。
RDB$ENTITY_NAME1 char(31) RDB$OBJECT_NAMEおよびRDB$SUBOBJECT_NAMEによって識別されるオブジェクトの存在に依存しているエンティティの名前。
RDB$ENTITY_NAME2 char(31) RDB$ENTITY_NAME1と併用している場合は、RDB$OBJECT_NAMEおよびRDB$SUBOBJECT_NAMEで指定されているオブジェクトの存在に依存しているエンティティの名前。
RDB$USAGE char(31) RDB$OBJECT_NAME、RDB$SUBOBJECT_NAME、RDB$ENTITY_NAME1、RDB$ENTITY_NAME2の間の関係。

RDB$USAGEには短い説明が含まれる。

RDB$FLAGS integer フラグ。
RDB$CONSTRAINT_NAME char(31) この列は、別のシステム表から参照される制約の名前。この列の値は、RDB$CONSTRAINTSシステム表の同列の値と同じ。
RDB$SECURITY_CLASS char(20) 今後の使用のため予約。

RDB$FLAGSは、RDB$INTERRELATIONSシステム表のフラグを示します。

ビット位置 説明
0 エンティティはモジュール。
1 エンティティはモジュール。
2 エンティティはルーチン。
3 オブジェクトはルーチン。
4 エンティティはトリガー。
5 オブジェクトはトリガー。
6 エンティティは制約。
7 オブジェクトは制約。
8 予約済。
9 予約済。
10 予約済。
11 予約済。
12 予約済。
13 予約済。
14 エンティティは順序。
15 オブジェクトは順序。

I.6.14 RDB$MODULES

RDB$MODULESシステム表では、ユーザー定義のモジュールが記述されます。モジュールには、ストアド・プロシージャや外部ファンクションを格納できます。各モジュールは、ヘッダー、宣言部および一連のルーチンを備えています。ヘッダーと宣言部はRDB$MODULESで定義されます。(各ルーチンは、RDB$ROUTINESのエントリによって定義されます。)ユーザー定義のモジュールごとに1行がRDB$MODULES表に格納されます。次の表は、RDB$MODULESシステム表の列に関する情報を示しています。

列名 データ型 概要説明
RDB$MODULE_NAME char(31) モジュールの名前。
RDB$MODULE_OWNER char(31) モジュールの所有者。モジュールが実行者権限モジュールの場合、この列はNULLに設定される。それ以外の場合、この列の定義者のユーザー名が定義者権限チェックに使用される。
RDB$MODULE_ID integer Oracle Rdbによってこのモジュールに割り当てられた一意の識別子。
RDB$MODULE_VERSION char(16) モジュールのバージョンとチェックサム。データベースに関するモジュールの実行時検証を可能にする。
RDB$EXTENSION_PARAMETERS byte varying モジュール・レベル宣言のエンコードされた情報。
RDB$MODULE_HDR_SOURCE byte varying 定義者が指定したモジュール・ヘッダーのソース。
RDB$DESCRIPTION byte varying モジュールの説明。
RDB$ACCESS_CONTROL byte varying モジュールへのアクセスを制御するアクセス制御リスト(ACL)。この値はNULLにできる。
RDB$SECURITY_CLASS char(20) 今後の使用のため予約。
RDB$CREATED date vms モジュールの作成時に設定される。
RDB$LAST_ALTERED date vms ALTER、RENAME、DROP、GRANT、REVOKEの各文によるモジュールの変更時に設定される。
RDB$MODULE_CREATOR char(31) このモジュールの作成者。OWNERとAUTHORIZATIONは区別されます。
RDB$VARIABLE_COUNT integer グローバル変数の数。

I.6.15 RDB$OBJECT_SYNONYMS

シノニムが有効な場合、RDB$OBJECT_SYNONYMSシステム表は、シノニムの名前、タイプおよびターゲットを記録するために作成されます。次の表は、RDB$OBJECT_SYNONYMSシステム表の列に関する情報を示しています。

列名 データ型 概要説明
RDB$CREATED date vms シノニムのエントリが作成された日付と時刻。
RDB$LAST_ALTERED date vms シノニムのエントリが最後に変更された日付と時刻。
RDB$DESCRIPTION byte varying シノニムに関するユーザー指定の説明。
RDB$EXTENSION_PARAMETERS byte varying 今後の使用のため予約。
RDB$FLAGS integer フラグ。
RDB$OBJECT_TYPE integer シノニムのタイプ。
RDB$SYNONYM_NAME char(31) 問合せで使用されるシノニム。この名前は、RDB$OBJECT_SYNONYMSシステム表内で一意。
RDB$SYNONYM_VALUE char(31) シノニムを定義するオブジェクトの名前。
RDB$SYNONYM_CREATOR char(31) シノニムのエントリの作成者。

RDB$FLAGSは、RDB$OBJECT_SYNONYMSシステム表のフラグを示します。

ビット位置 説明
0 このビットが設定されている場合は、このシノニムが別のシノニムを参照していることを示す。
1 今後の使用のため予約。
2 シノニムがRENAME文によって作成されたことを示す。

I.6.16 RDB$PARAMETERS

RDB$PARAMETERSシステム表では、RDB$ROUTINESに格納されている各ルーチンのルーチン・インタフェースを定義します。ルーチン(プロシージャまたはファンクション)への各パラメータは、RDB$PARAMETERSの行で記述されます。次の表は、RDB$PARAMETERSシステム表の列に関する情報を示しています。

列名 データ型 概要説明
RDB$PARAMETER_NAME char(31) パラメータの名前。
RDB$PARAMETER_SOURCE char(31) このパラメータを含むルーチンのソース(ドメインまたは表)。
RDB$ROUTINE_ID integer Oracle Rdbによってこのパラメータを含むルーチンに割り当てられた一意の識別子。
RDB$ORDINAL_POSITION integer パラメータ・リストの位置。位置0は、ファンクションの結果の記述を示す。
RDB$PARAMETER_TYPE integer パラメータのデータ型。
RDB$PARAMETER_SUB_TYPE integer RDB$FIELD_SUB_TYPEのセクションで示されている、RDB$PARAMETER_TYPEのデータのサブタイプを表す値。
RDB$PARAMETER_LENGTH integer パラメータの長さ。
RDB$PARAMETER_SCALE integer データ型のスケール。
RDB$PARAMETER_SEG_LENGTH integer セグメント化された文字列セグメントの長さ。日時期間フィールドでは先行フィールド精度。
RDB$DEFAULT_VALUE2 byte varying パラメータのデフォルト。
RDB$FLAGS integer フラグ。
RDB$DESCRIPTION byte varying パラメータの説明。
RDB$SECURITY_CLASS char(20) 今後の使用のため予約。

RDB$FLAGSは、RDB$PARAMETERSシステム表のフラグを示します。

ビット位置 説明
0 IN(読取り)INOUT(変更)。
1 OUT(書込み)INOUT(変更)。
2 今後の使用のため予約。
3 BY DESCRIPTOR(デフォルトはBY REFERENCE)。
4 BY VALUE(ビット番号3は無視されます)。
5 今後の使用のため予約。
6 パラメータ・モードが未定義の場合に設定する。
  ビット0と1の両方がクリアされている場合、パラメータはファンクションのRETURN TYPE。

I.6.17 RDB$PRIVILEGES

RDB$PRIVILEGESシステム表では、データベース・オブジェクトの保護について記述します。データベースの各エンティティの権限付与者、権限受領者、および権限の組合せごとに1行を使用します。

データベース・オブジェクトの権限を別のユーザーに付与するユーザーごとに1行がRDB$PRIVILEGES表に格納されます。

SQL GRANTオプションを指定せずにデータベース・オブジェクトの権限を付与した場合、権限付与者および権限受領者の行は変更されます。

権限の変更はコマンドのコミット時に有効になります。

注意

RDB$PRIVILEGESシステム表は、ANSIデータベースでのみ使用されます。

次の表は、RDB$PRIVILEGESシステム表の列に関する情報を示しています。

列名 データ型 概要説明
RDB$SUBOBJECT_ID integer 保護が定義されている列またはルーチンのID。保護の対象がデータベース、モジュール、表、またはビューである場合、このフィールドはNULLになる。この列に格納される値は、データベース内で一意である必要がある。
RDB$OBJECT_ID integer 保護が定義されているモジュール、表、順序、またはビューのID。データベースの保護が定義されている場合、この列の値はNULLになる。この列に格納される値は、データベース内で一意である必要がある。
RDB$GRANTOR integer 権限の定義者または変更者のバイナリ形式のUIC。通常は保護コマンドの実行者のUIC。

SQL IMPORT文では、SQL IMPORT文の実行者に限定されず、そのユーザーの保護の最初の定義者のUICとなる。

RDB$GRANTEE byte varying データベース・オブジェクトの権限保持者のバイナリ形式のUIC。
RDB$PRIV_GRANT integer 権限受領者が保持する、他のユーザーに付与できる権限のアクセス・マスクを指定する。
RDB$PRIV_NOGRANT integer 権限受領者が保持する、本人は使用できても他のユーザーには付与できない権限のアクセス・マスクを指定する。
RDB$FLAGS integer フラグ。
RDB$SECURITY_CLASS char(20) 今後の使用のため予約。

RDB$FLAGSは、RDB$PRIVILEGESシステム表のフラグを示します。

ビット位置 説明
0 モジュールおよびプロシージャに対して権限が定義されている。
1 データが順序に関連付けられている。

I.6.18 RDB$PROFILES

RDB$PROFILESシステム表には、データベースで定義されている各プロファイル、ユーザーおよびロールに関する情報が格納されます。次の表は、RDB$PROFILESシステム表の列に関する情報を示しています。関連するRDB$GRANTED_PROFILESシステム表も参照してください。

列名 データ型 概要説明
RDB$CREATED date vms プロファイルのエントリが作成された日付と時刻。
RDB$LAST_ALTERED date vms プロファイルのエントリが最後に変更された日付と時刻。
RDB$DESCRIPTION byte varying このエントリのコメント。
RDB$EXTENSION_
PARAMETERS
byte varying デフォルトのトランザクションなどの追加定義。
RDB$SYSTEM_FLAG integer ロールまたはユーザーを定義するシステムの場合はTRUE(1)に設定され、それ以外の場合はFALSE(0)に設定される。RDB$SYSTEM_FLAGが設定されると、これらのエントリはDROP文で削除できなくなる可能性がある。
RDB$FLAGS integer フラグ。
RDB$DEFINE_ACCESS integer 今後の使用のため予約。
RDB$CHANGE_ACCESS integer 今後の使用のため予約。
RDB$DELETE_ACCESS integer 今後の使用のため予約。
RDB$PROFILE_ID integer USER、PROFILEおよびROLEがデータベースに追加されるたびに生成される一意の識別子。
RDB$PROFILE_TYPE integer プロファイル情報のクラス: ロール(1)、ユーザー(3)、プロファイル(0)。
RDB$PROFILE_NAME char(31) ユーザー、プロファイルまたはロールの名前。この名前はRDB$PROFILES表内で一意である。
RDB$PROFILE_CREATOR char(31) エントリの作成者。

RDB$FLAGSは、RDB$PROFILESシステム表のフラグを示します。

ビット位置 説明
0 ユーザー・エントリが無効(ACCOUNT LOCK)。
1 ユーザーおよびロールは外部的に識別される。
2 今後の使用のため予約。
3 システム・ロール。
4 ユーザーにプロファイルが割り当てられている。