RDB$QUERY_OUTLINESシステム表には、最適化の前に既知の問合せアウトラインを取得するため、オプティマイザで使用される問合せアウトラインの定義が格納されます。次の表は、RDB$QUERY_OUTLINESシステム表の列に関する情報を示しています。
列名 | データ型 | 概要説明 |
---|---|---|
RDB$OUTLINE_NAME | char(31) | 問合せアウトラインの名前。 |
RDB$BLR_ID | char(16) | BLRハッシュ識別子。この識別子は、問合せアウトラインの毎作成時にオプティマイザによって生成される。 |
RDB$MODE | integer | 問合せモード(MANDATORYまたはOPTIONAL)。 |
RDB$FLAGS | integer | フラグ。 |
RDB$DESCRIPTION | byte varying | このアウトラインに関するユーザー指定の説明。 |
RDB$OUTLINE_BLR | byte varying | コンパイルされた問合せアウトライン。 |
RDB$SECURITY_CLASS | char(20) | 今後の使用のため予約。 |
RDB$CREATED | date vms | アウトラインの作成時に設定される。 |
RDB$LAST_ALTERED | date vms | 今後の使用のため予約。 |
RDB$OUTLINE_CREATOR | char(31) | このアウトラインの作成者。 |
RDB$FLAGSは、RDB$QUERY_OUTLINESシステム表のフラグを示します。
ビット位置 | 説明 |
---|---|
0 | このアウトラインは、必要な表や索引の削除などのアクションによって無効化されている。 |
I.6.20 RDB$RELATION_CONSTRAINTS
RDB$RELATION_CONSTRAINTSシステム表では、表固有のすべての制約をリストします。次の表は、RDB$RELATION_CONSTRAINTSシステム表の列に関する情報を示しています。
列名 | データ型 | 概要説明 |
---|---|---|
RDB$CONSTRAINT_MATCH_TYPE | integer | 表固有の参照整合性制約に関連付けられている一致タイプ。この列は、今後の使用のために予約されている。値は常に0。 |
RDB$CONSTRAINT_NAME | char(31) | RDB$RELATION_NAMEで指定した表で定義されている制約の名前。
この列の値は、RDB$CONSTRAINTSシステム表の同列の値と同じ。 |
RDB$CONSTRAINT_SOURCE | byte varying | このテキスト文字列には、表定義の制約のソースが含まれる。 |
RDB$CONSTRAINT_TYPE | integer | 定義された表固有の制約のタイプ。この値は、RDB$CONSTRAINT_TYPEのセクションに示す。 |
RDB$ERASE_ACTION | integer | 指定された参照整合性消去アクションのタイプ。この列は、今後の使用のために予約されている。値は常に0。 |
RDB$FIELD_NAME | char(31) | 列レベルで表固有の制約が定義されている列の名前。この列は、表レベルの制約では空白になる。 |
RDB$FLAGS | integer | フラグ。 |
RDB$MODIFY_ACTION | integer | 指定された参照整合性変更アクションのタイプ。この列は、今後の使用のために予約されている。値は常に0。 |
RDB$REFD_CONSTRAINT_NAME | char(31) | 参照整合性外部キー制約によって参照される一意キー制約または主キー制約の名前。
制約が参照整合性制約でないか、または参照整合性制約が指定されていない場合、この列はNULLになる。それ以外の場合、この列の値は、RDB$CONSTRAINTSシステム表およびRDB$RELATION_CONSTRAINT_FLDSシステム表の同列の値と同じ。 この列は、外部キーの被参照表名と被参照列名の特定に使用される。 |
RDB$RELATION_NAME | char(31) | 指定された制約が定義されている表の名前。この列の値は、RDB$RELATIONSシステム表の同列の値と同じ。 |
RDB$SECURITY_CLASS | char(20) | 今後の使用のため予約。 |
RDB$FLAGSは、RDB$RELATION_CONSTRAINTSシステム表のフラグを示します。
ビット位置 | 説明 |
---|---|
0 | 一意の値を使用可能にし、NULLを無視するSQL規格のUNIQUE制約。 |
次の表では、RDB$CONSTRAINT_TYPE列の値をリストしています。
値 | 記号 | 意味 |
---|---|---|
1 | RDB$K_CON_CONDITION | 条件式の制約を必要とする。 |
2 | RDB$K_CON_PRIMARY_KEY | 主キー制約。 |
3 | RDB$K_CON_REFERENTIAL | 参照(外部キー)制約。 |
4 | RDB$K_CON_UNIQUE | 一意の制約。 |
5 | 今後の使用のため予約。 | |
6 | RDB$K_CON_NOT_NULL | NOT NULL(欠落)制約。 |
I.6.21 RDB$RELATION_CONSTRAINT_FLDS
RDB$RELATION_CONSTRAINT_FLDSシステム表では、表固有の制約の一意キー、主キーまたは外部キーの宣言に関与している列をリストします。
一意キー制約、主キー制約、外部キー制約のすべてまたは一部を表す列ごとに1行が使用されます。
次の表は、RDB$RELATION_CONSTRAINT_FLDSシステム表の列に関する情報を示しています。
列名 | データ型 | 概要説明 |
---|---|---|
RDB$CONSTRAINT_NAME | char(31) | 指定された列が関与している制約の名前。 |
RDB$FIELD_NAME | char(31) | 指定された制約のすべてまたは一部を表す列の名前。この列の値は、RDB$RELATION_FIELDSシステム表に格納されている値と同じ。 |
RDB$FIELD_POSITION | integer | 一意キー制約、主キー制約または外部キー制約を宣言する列リスト内で指定された列の序数位置。
列レベルの制約では、常に1つの列のみがリストに存在する。リストの最初の列の値が1であり、2番目の列の値が2になる(以降同様)。 |
RDB$FLAGS | integer | 今後の使用のため予約。 |
RDB$SECURITY_CLASS | char(20) | 今後の使用のため予約。 |
RDB$RELATION_FIELDSシステム表には、各表の列ごとに1行が格納されます。次の表は、RDB$RELATION_FIELDSシステム表の列に関する情報を示しています。
列名 | データ型 | 概要説明 |
---|---|---|
RDB$RELATION_NAME | char(31) | この行によって表される列を含む表の名前。 |
RDB$FIELD_NAME | char(31) | 表内のこの行によって表される列の名前。同じRDB$RELATION_NAMEを持つ各RDB$RELATION_FIELDS行は、一意のRDB$FIELD_NAMEを必要とする。 |
RDB$FIELD_SOURCE | char(31) | この列を定義付ける(RDB$FIELDS表内のRDB$FIELD_NAME列の)ドメインの名前。 |
RDB$FIELD_ID | integer | この行によって表される列の命名のためにBLR内で使用する識別子。Oracle Rdbでは、表内に列が存在するかぎり永続するIDが各列に割り当てられる。 |
RDB$FIELD_POSITION | integer | 同じ表内の他の列に対する、この行によって表される列の序数位置。 |
RDB$QUERY_NAME | char(31) | この列の問合せの名前。RDB$QUERY_NAMEの値はNULLにできる。 |
RDB$UPDATE_FLAG | integer | 列が更新可能かどうかを示す値。
|
RDB$QUERY_HEADER | byte varying | SQLで使用されるこの列の問合せヘッダー。RDB$RELATION_FIELDSの列属性はRDB$FIELDSよりも優先される。
RDB$RELATION_FIELDSに属性値がない場合、SQLではRDB$FIELDSの値が使用される。 |
RDB$DESCRIPTION | byte varying | この行の内容に関するユーザー指定の説明。 |
RDB$VIEW_CONTEXT | integer | ビュー表では、ビュー列の修飾に使用するコンテキスト変数がこの列によって識別される。
このコンテキスト変数は、ビューを定義する行選択式で定義されている必要がある。このコンテキスト変数は、RDB$RELATIONSのRDB$VIEW_BLR列によって表されるBLRに表示される。 |
RDB$BASE_FIELD | char(31) | ビューのコンポーネントとして使用される列のローカル名。この名前は、RDB$VIEW_CONTEXTで識別されるコンテキスト変数によって修飾される。 |
RDB$DEFAULT_VALUE | byte varying | STORE句の使用時に列の値が指定されていない場合に、非SQLインタフェースによって使用されるデフォルト値。
これは実際の列値を保持するRDB$MISSING_VALUEとは異なる。RDB$RELATION_FIELDSの列属性は、RDB$FIELDSの属性よりも優先される。 RDB$RELATION_FIELDSに属性値がない場合は、RDB$FIELDSの値が使用される。 |
RDB$EDIT_STRING | VARCHAR(255) | 列の印刷時に対話型SQLによって使用される編集文字列。RDB$EDIT_STRINGの値はNULLにできる。 |
RDB$EXTENSION_PARAMETERS | byte varying | 今後の使用のため予約。 |
RDB$ACCESS_CONTROL | byte varying | 列のアクセス制御リスト。 |
RDB$DEFAULT_VALUE2 | byte varying | SQLデフォルト値のBLR。この値は、SQL INSERT文に値が指定されていないときに使用される。 |
RDBVMS$SECURITY_AUDIT | integer | RMU Set Auditコマンドで指定されている、データベースに対して監査される権限を示すビット・マスク。 |
RDBVMS$SECURITY_ALARM | integer | RMU Set Auditコマンドで指定されている、データベースに対して警告を生成する権限を示すビット・マスク。 |
RDB$SECURITY_CLASS | char(20) | 今後の使用のため予約。 |
RDB$RELATIONSシステム表では、データベース内のすべての表とビューの名前を示します。表またはビューごとに1行が使用されます。次の表は、RDB$RELATIONSシステム表の列に関する情報を示しています。
列名 | データ型 | 概要説明 |
---|---|---|
RDB$RELATION_NAME | char(31) | データベース内の表の名前。RBB$RELATIONS内の各行は、一意のRDB$RELATION_NAMEを必要とする。 |
RDB$RELATION_ID | integer | 表を識別するためにBLR内で使用されるID番号。 |
RDB$STORAGE_ID | integer | この表のデータが格納されているデータベースの論理領域へのポインタ。 |
RDB$SYSTEM_FLAG | integer | 表がシステム表またはユーザー定義表のいずれであるかを示す値。
|
RDB$DBKEY_LENGTH | integer | バイト単位でのデータベース・キーの長さ。表内の行のデータベース・キーは8バイトであり、ビュー行ではnの8倍になり、この場合のnはビューで参照される表の数を示す。
ビューにデータベース・キーがない場合、RDB$DBKEY_LENGTHは0になる。これは、ビューでGROUP BYまたはUNIONが使用されるか統計値が返される場合に発生する。 |
RDB$MAX_VERSION | integer | 表定義の現在のバージョン番号。
この値は、表の現在の行書式を決定するRDB$FIELD_VERSIONSのRDB$VERSION列と一致する。 |
RDB$CARDINALITY | bigint | 表内の行数(カーディナリティ)。 |
RDB$FLAGS | integer | フラグ。 |
RDB$VIEW_BLR | byte varying | ビューの行選択に使用される行選択式を記述するBLR。表がビューでない場合は、RDB$VIEW_BLRは使用されない。 |
RDB$DESCRIPTION | byte varying | この表またはビューに関するユーザー指定の説明。 |
RDB$VIEW_SOURCE | byte varying | ビュー定義におけるユーザーのソース・テキスト。 |
RDB$ACCESS_CONTROL | byte varying | 表のアクセス制御ポリシー。 |
RDB$EXTENSION_PARAMETERS | byte varying | 今後の使用のため予約。 |
RDB$CDD_NAME | byte varying | SQL句のFROM PATHNAMEで指定されている、表定義の基礎となるディクショナリ・エンティティの完全修飾名。 |
RDBVMS$SECURITY_AUDIT | integer | RMU Set Auditコマンドで指定されている、表に対して監査される権限を示すビット・マスク。 |
RDBVMS$SECURITY_ALARM | integer | RMU Set Auditコマンドで指定されている、表に対して警告を生成する権限を示すビット・マスク。 |
RDB$SECURITY_CLASS | char(20) | 今後の使用のため予約。 |
RDBVMS$SECURITY_AUDIT2 | integer | 今後の使用のため予約。 |
RDBVMS$SECURITY_ALARM2 | integer | 今後の使用のため予約。 |
RDB$CREATED | date vms | 表またはビューの作成時に設定される(システム表では、データベースの作成タイムスタンプと同じ)。 |
RDB$LAST_ALTERED | date vms | SQL ALTER TABLE、CREATE/ALTER STORAGE MAP、ALTER DOMAIN、GRANTまたはREVOKEの各文によってこのシステム表が変更されたときに設定される。 |
RDB$RELATION_CREATOR | char(31) | このシステム表の作成者。 |
RDB$ROW_CLUSTER_FACTOR | bigint(7) | 行の順次読取り時に発生するクランプ変更の数の、表内の行の数に対する比率。行が断片化されており、その断片の一部が現在のクランプまたは隣接するクランプとは別のクランプにある場合は、クランプ変更とみなす必要がある。 |
RDB$TYPE_ID | integer | 今後の使用のため予約。 |
RDB$FLAGSは、RDB$RELATIONSシステム表のフラグを示します。
ビット位置 | 説明 |
---|---|
0 | この表はビューになる。 |
1 | この表は圧縮されていない。 |
2 | SQL句のWITH CHECK OPTIONがこのビュー定義で使用される。 |
3 | 特殊な内部システム表を示す。 |
4 | このビューは更新可能なANSIビューではない。 |
5 | 今後の使用のため予約。 |
6 | 今後の使用のため予約。 |
7 | 今後の使用のため予約。 |
8 | ビット1は無視され、圧縮情報としてRDB$STORAGE_MAPSが使用される。 |
9 | 一時表に対して設定される。 |
10 | グローバル一時表に対して設定され、ローカル一時表ではクリアされる。 |
11 | コミット時のデータ削除に対して設定され、コミット時のデータ保持ではクリアされる。 |
12 | 今後の使用のため予約。 |
13 | ビューまたは表がローカル一時表を参照している場合に設定される。 |
14 | 読取り専用の特殊な情報表。 |
15 | システム表に記憶域マップがある。 |
16 | ビューは一時表のみを参照する。 |
RDB$ROUTINESシステム表では、ストアド・モジュールの一部である各ルーチンやスタンドアロンの外部ルーチンが記述されます。外部ルーチンは、モジュールの一部、またはスタンドアロン(モジュールのコンテキスト外)の場合があります。次の表は、RDB$ROUTINESシステム表の列に関する情報を示しています。
列名 | データ型 | 概要説明 |
---|---|---|
RDB$ROUTINE_NAME | char(31) | ルーチンの名前。 |
RDB$GENERIC_ROUTINE_NAME | char(31) | 今後の使用のため予約。 |
RDB$MODULE_ID | integer | このルーチンを含むモジュールの識別子。ルーチンがスタンドアロンの場合、値は0になる。 |
RDB$ROUTINE_ID | integer | このルーチンに割り当てられている一意の識別子。 |
RDB$ROUTINE_VERSION | char(16) | ルーチンのバージョンとチェックサム。データベースに関するルーチンの実行時検証を可能にする。 |
RDB$PARAMETER_COUNT | integer | このルーチンのパラメータの数。 |
RDB$MIN_PARAMETER_COUNT | integer | このルーチンのパラメータの最小数。 |
RDB$ROUTINE_BLR | byte varying | このルーチンのBLR。ルーチンが外部の場合、この列はNULLに設定される。 |
RDB$ROUTINE_SOURCE | byte varying | 定義者が指定したルーチンのソース。 |
RDB$FLAGS | integer | フラグ。 |
RDB$SOURCE_LANGUAGE | integer | RDB$SOURCE_LANGUAGEのセクションに、この列の値をリストする。 |
RDB$DESCRIPTION | byte varying | ルーチンの説明。 |
RDB$ACCESS_CONTROL | byte varying | ルーチンへのアクセスを制御するアクセス制御リスト(ACL)。この値はNULLにできる。 |
RDB$SECURITY_CLASS | char(20) | 今後の使用のため予約。 |
RDB$EXTENSION_PARAMETERS | byte varying | ルーチンに関するインタフェース情報を格納する。この情報にはパラメータ・マッピング、共有可能なイメージ名、エントリ・ポイント名などがある。 |
RDB$TYPE_ID | integer | 今後の使用のため予約。 |
RDB$ROUTINE_OWNER | char(31) | ルーチンの所有者。この列はルーチンがスタンドアロンの場合(RDB$MODULE_IDが0のとき)にのみ使用され、それ以外の場合、値はNULLになる。 |
RDB$CREATED | date vms | ルーチンの作成時に設定される(親のモジュールの作成タイムスタンプと同じ)。 |
RDB$LAST_ALTERED | date vms | ALTER、RENAME、GRANTおよびREVOKEの各文によるルーチンの変更時に設定される。 |
RDB$ROUTINE_CREATOR | char(31) | このルーチンの作成者。AUTHORIZATIONとOWNERは区別される。 |
RDB$FLAGSは、RDB$ROUTINESシステム表のフラグを示します。
ビット位置 | 説明 |
---|---|
0 | ルーチンはファンクションである。(コールで結果が返される。) |
1 | ルーチンが無効。(メタデータの変更によって無効化されている。) |
2 | ルーチンはバリアントである。(1回目と同じパラメータで2回目にファンクションを起動しても、異なる結果が返されると想定される。) |
3 | ルーチンはトランザクション状態を変更できる。 |
4 | ルーチンはセキュアな共有可能イメージである。 |
5 | ルーチンは、SQLのパラメータ渡しスタイルを使用している外部ルーチンである。(各パラメータおよび結果に対するNULLインジケータを含む。) |
6 | ルーチンが無効。(このルーチンが依存しているオブジェクトのメタデータ変更によって無効化されている。この依存性は、言語セマンティクスの依存性である。) |
7 | 今後の使用のため予約。 |
8 | NULLの引数がある場合、外部ファンクションはNULLを返す。 |
9 | SQLルーチンは分析されている。 |
10 | SQLルーチンにINSERTが含まれている。 |
11 | SQLルーチンにUPDATEが含まれている。 |
12 | SQLルーチンにDELETEが含まれている。 |
13 | SQLルーチンにSELECTが含まれている。 |
14 | SQLルーチンにCALLが含まれているか、またはSQLルーチンがSQLファンクションを起動する。 |
15 | 今後の使用のため予約。 |
16 | 使用は所有モジュールに限定される。 |
17 | 今後の使用のため予約。 |