8 Oracle Database Provider for DRDAのデータ・ディクショナリ

Oracle Database Provider for DRDAに対応してにOracleのデータ・ディクショナリが拡張されました。

8.1 Oracle Database Provider for DRDAでのデータ・ディクショナリのエミュレーション

多くのアプリケーションでは、DB2システム・カタログのサブセットが使用されます。Oracle Database Provider for DRDAでは次の3つの主要なカタログ・セットがサポートされています。3つのセットすべてで共通する構造がありますが、明確に異なる点も多数あります。

これらのカタログは、既存のOracleデータ・ディクショナリの表およびビューのオーバーレイ(ビュー)として実装されます。

この項で説明するカタログは、DB2 for z/OSのカタログです。

関連トピック

8.1.1 z/OS上のDB2

DB2 for z/OSには次のカタログ表が含まれています。これらのビューの詳細は、IBMの『DB2 for z/OS SQL Reference』マニュアルを参照してください。

  • SYSIBM.SYSCOLUMNS

  • SYSIBM.SYSKEYS

  • SYSIBM.SYSINDEXES

  • SYSIBM.SYSFOREIGNKEYS

  • SYSIBM.SYSPACKAGE

  • SYSIBM.SYSPACKSTMT

  • SYSIBM.SYSPARMS

  • SYSIBM.SYSPLAN

  • SYSIBM.SYSRELS

  • SYSIBM.SYSROUTINES

  • SYSIBM.SYSSYNONYMS

  • SYSIBM.SYSTABLES

  • SYSIBM.SYSVIEWS

8.2 Oracle Database Provider for DRDAのデータ・ディクショナリ・ビュー

Oracle Database Provider for DRDAには様々なデータ・ディクショナリ・ビューがあります。

8.2.1 ALL_DRDAASPACKAGEデータ・ディクショナリ・ビュー

表8-1に、現在バインドされているDRDAパッケージのリストを示します。その所有者はユーザーSYSIBMです。このビューにアクセスするユーザーには、DRDAAS_USER_ROLEまたはDRDAAS_ADMIN_ROLEが付与されている必要があります。DRDAAS_USER_ROLEおよびDRDAAS_ADMIN_ROLEを参照してください。

表8-1 ALL_DRDAASPACKAGEデータ・ディクショナリ・ビューの説明

列名 データ型 NULL? 説明

COLLID

VARCHAR2(128)

Not NULL

パッケージのコレクションID(RDBCOLID)

NAME

VARCHAR2(128)

NULL

DRDAパッケージの名前(PKGID)

VRSNAM

VARCHAR2(128)

パッケージのバージョン名(VRSNAM)

CONTOKEN

RAW(8)

NULL

パッケージの整合性文字列(PKGCNSTKN)

OWNER

VARCHAR2(128)

NULL

パッケージを所有するユーザーのID

CREATOR

VARCHAR2(128)

NULL

パッケージを作成/バインドしたユーザーのID

CREATE_TIME

TIMESTAMP

NULL

パッケージの作成時刻

LAST_BIND_TIME

TIMESTAMP

NULL

パッケージの最終バインディング時刻

関連トピック

8.2.2 ALL_DRDAASPACKAUTHデータ・ディクショナリ・ビュー

表8-2に、各パッケージのユーザーID、DRDAパッケージ名、ユーザーに付与される権限のセットを示します。これは、ユーザーSYSIBMによって所有されています。このビューにアクセスするユーザーには、DRDAAS_ADMIN_ROLEまたはDRDAAS_ADMIN_ROLEが付与されている必要があります。DRDAAS_USER_ROLEおよびDRDAAS_ADMIN_ROLEを参照してください。

表8-2 ALL_DRDAASPACKAUTHデータ・ディクショナリ・ビューの説明

列名 データ型 NULLかどうか 説明

GRANTOR

VARCHAR2(128)

NULL

権限を付与したユーザーのユーザーID

GRANTEE

VARCHAR2(128)

NULL

権限が付与されたユーザーのユーザーID

GRANT_TIME

TIMESTAMP

NULL

権限の作成時刻

COLLID

VARCHAR2(128)

NULL

DRDAパッケージのコレクションID(RDBCOLID)

NAME

VARCHAR2(128)

NULL

DRDAパッケージの名前(PKGID)

PRIVILEGE

VARCHAR2(128)

NULL

権限

関連トピック

8.2.3 ALL_DRDAASPACKSIDEデータ・ディクショナリ・ビュー

表8-3に、DRDAパッケージのサイド属性を示します。これは、ユーザーSYSIBMによって所有されています。このビューにアクセスするユーザーには、DRDAAS_ADMIN_ROLEまたはDRDAAS_ADMIN_ROLEが付与されている必要があります。DRDAAS_USER_ROLEおよびDRDAAS_ADMIN_ROLEを参照してください。

表8-3 ALL_DRDAASPACKSIDEデータ・ディクショナリ・ビューの説明

列名 データ型 NULLかどうか 説明

COLLID

VARCHAR2(128)

NULL

DRDAパッケージのコレクションID(スキーマ) (RDBCOLID)

NAME

VARCHAR2(128)

NULL

DRDAパッケージの名前(PKGID)

SIDEITEM

VARCHAR2(128)

NULL

サイド項目

SIDEWORD

VARCHAR2(255)

NULL

サイド・キーワード

SIDEVALUE

VARCHAR2(255)

NULL

サイド値

関連トピック

8.2.4 DBA_DRDAASPACKAGEデータ・ディクショナリ・ビュー

表8-4に、DRDAパッケージ定義データを示します。これは、ユーザーSYSIBMによって所有されています。このビューにアクセスするユーザーには、DRDAAS_ADMIN_ROLEが付与されている必要があります。DRDAAS_ADMIN_ROLEを参照してください。

表8-4 DBA_DRDAASPACKAGEデータ・ディクショナリ・ビューの説明

列名 データ型 NULLかどうか 説明

COLLID

VARCHAR2(128)

NULL

DRDAパッケージのコレクションID (スキーマ) (RDBCOLID)

NAME

VARCHAR2(128)

NULL

DRDAパッケージの名前(PKGID)

VRSNAM

VARCHAR2(128)

パッケージのバージョン名(VRSNAM)

CONTOKEN

RAW(8)

NULL

パッケージの一貫性文字列(PKGCNSTKN)

OWNER

VARCHAR2(128)

NULL

パッケージを所有するユーザーID

CREATOR

VARCHAR2(128)

NULL

パッケージを作成したユーザーのID

CREATE_TIME

TIMESTAMP

NULL

パッケージが作成された時刻

LAST_BIND_TIME

TIMESTAMP

Not-NULL

パッケージの最後のバインディングの時刻

QUALIFIER

VARCHAR2(128)

パッケージのデフォルト・スキーマ(DFTRDBCOL)

PKSIZE

NUMBER(5)

NULL

パッケージのセクション数(MAXSCTNBR)

VALID

CHAR(1)

NULL

パッケージの有効状態。Y(はい)またはN(いいえ)。

ISOLATION

CHAR(1)

NULL

R=RRA=ALLC=CSG=CHGN=NC (PKGISOLVI)

RELEASEOPT

CHAR(1)

C=COMMITD=DEALLOCATE (RDBRLSOPT)

BLOCKING

CHAR(1)

B=(ブロック)、N=(ブロックなし) (QRYBLKCTL)

CODEPAGES

NUMBER(5)

デフォルトのDBCSコードページ(PKGDFTCC(CCSIDSBC))

CODEPAGED

NUMBER(5)

デフォルトのDBCSコードページ(PKGDFTCC(CCSIDDBC))

CODEPAGEM

NUMBER(5)

デフォルトのMBCSコードページ(PKGDFTCC(CCSIDMBC))

CODEPAGEX

NUMBER(5)

デフォルトのXMLコードページ(PKGDFTCC(CCSIDXML))

DEGREEIOPRL

NUMBER(5)

並列I/Oの並列度(DGRIOPRL)

DATEFMT

CHAR(1)

日付書式(1=USA、2=EUR、3=ISO、4=JIS、5=LOCAL)。

TIMEFMT

CHAR(1)

時刻書式(1=USA、2=EUR、3=ISO、4=JIS、5=LOCAL)

DECDEL

CHAR(1)

小数点区切り記号(STTDECDEL)

STRDEL

CHAR(1)

文字列のデリミタ(STTSTRDEL)

DECPRC

NUMBER(5)

小数点以下の桁数(DECPRC)

CHARSUBTYPE

CHAR(1)

文字のサブタイプ(PKGDFTCST)

DYNAMICRULES

CHAR(1)

将来使用(PKGATHRUL)

REPREPDYNSQL

CHAR(1)

将来使用(PRPSTTKP)

関連トピック

8.2.5 DBA_DRDAASPACKAUTHデータ・ディクショナリ・ビュー

表8-5に、各パッケージのユーザーID、RDAパッケージ名、およびユーザーに対して付与される権限を示します。これは、ユーザーSYSIBMによって所有されています。ユーザーがこのビューにアクセスするためには、DRDAAS_ADMIN_ROLEが付与されている必要があります。「DRDAAS_ADMIN_ROLE」を参照してください。

表8-5 DBA_DRDAASPACKAUTHデータ・ディクショナリ・ビューの説明

列名 データ型 NULLかどうか 説明

GRANTOR

VARCHAR2(128)

NULL

パッケージの権限を付与するユーザーの認可ID

GRANTEE

VARCHAR2(128)

NULL

パッケージの権限を付与されるユーザーの認可ID

COLLID

VARCHAR2(128)

NULL

DRDAパッケージのコレクションID (スキーマ) (RDBCOLID)

NAME

VARCHAR2(128)

NULL

DRDAパッケージの名前(PKGID)

VRSNAM

VARCHAR(128)

NULL

パッケージのバージョン名(VRSNAM)

PRIVILEGE

VARCHAR2(128)

NULL

付与される権限

関連トピック

8.2.6 DBA_DRDAASPACKSIDEデータ・ディクショナリ・ビュー

表8-6に、DRDAパッケージのサイド属性を示します。これは、ユーザーSYSIBMによって所有されています。このビューにアクセスするユーザーには、DRDAAS_ADMIN_ROLEが必要です。

表8-6 DBA_DRDAASPACKSIDEデータ・ディクショナリ・ビューの説明

列名 データ型 NULLかどうか 説明

COLLID

VARCHAR2(128)

NULL

DRDAパッケージのコレクションID (スキーマ) (RDBCOLID)

NAME

VARCHAR2(128)

NULL

DRDAパッケージの名前(PKGID)

SIDEITEM

VARCHAR(128)

NULL

サイド・アイテム

SIDEWORD

VARCHAR2(255)

NULL

サイド・キーワード

SIDEVALUE

VARCHAR2(255)

NULL

サイド値

8.2.7 DBA_DRDAASPACKSTMTデータ・ディクショナリ・ビュー

表8-7に、DRDAパッケージ本体データを示します。その所有者はユーザーSYSです。ユーザーがこのビューにアクセスするためには、DRDAAS_ADMIN_ROLEが付与されている必要があります。「DRDAAS_ADMIN_ROLE」を参照してください。

表8-7 DBA_DRDAASPACKSTMTデータ・ディクショナリ・ビューの説明

列名 データ型 NULLかどうか 説明

COLLID

VARCHAR2(128)

NULL

DRDAパッケージのコレクションID (スキーマ) (RDBCOLID)

NAME

VARCHAR2(128)

NULL

DRDAパッケージの名前(PKGID)

VRSNAM

VARCHAR(128)

パッケージのバージョン名(VRSNAM)

CONTOKEN

RAW(8)

NULL

パッケージの一貫性文字列(PKGCNSTKN)

STMTASM

CHAR(1)

NULL

文の想定事項(BNDSTTADM)

STMTNO

NUMBER(5)

NULL

文の番号(SQLSTTNBR)

SECTNO

NUMBER(5)

NULL

セクション番号(PKGSN)

STMTLEN

NUMBER

NULL

文のテキストの長さ

STMT

CLOB

NULL

文テキスト

関連トピック

8.2.8 DBA_DRDAASTRACEデータ・ディクショナリ・ビュー

DRDAASPATRACEデータ・ディクショナリ・ビューの説明には、DBMS_DRDAASおよびDBMS_DRDAAS_ADMIN パッケージ・ファンクションからのトレース・エントリが含まれています。所有者はユーザーSYSIBMです。このビューにアクセスするには、DRDAAS_ADMIN_ROLEまたはDRDAAS_ADMIN_ROLEのいずれかが付与されている必要があります。

これはデバッグ機能のみです。

表8-8 DBA_DRDAASPATRACEデータ・ディクショナリ・ビューの説明

列名 データ型 NULLかどうか 説明

CALLER

VARCHAR2(128)

NULL

トレース・レコードを記述したユーザーのユーザーID

FUNC

VARCHAR2(128)

NULL

トレースされるファンクション

ARG1

VARCHAR(128)

argument 2

ARG2

VARCHAR(128)

argument 1

ARG3

VARCHAR(128)

argument 3

ARG4

VARCHAR(128)

argument 4

ARG5

VARCHAR(128)

argument 5

TS

TIMESTAMP

NULL

トレース・エントリのタイムスタンプ

関連トピック

8.2.9 USER_DRDAASPACKAGEデータ・ディクショナリ・ビュー

このビューは、creator列またはowner列が現在のSQLユーザーIDに一致し、そのユーザーIDに、パッケージのCOLLIDおよびnameに一致するDBA_DRDAASPACKAUTHEXECUTE_PRIVILEGEが付与されている行のみを戻します。

ビューUSER_DRDAASPACKAGEDBA_DRDAASPACKAGE表にマップされます。その所有者はユーザーSYSIBMです。このビューから選択するには、DRDAAS_USER_ROLE権限が必要です。DRDAAS_USER_ROLEを参照してください。

このビューには、DBA_DRDAASPACKAGE表と同じ列定義が含まれています。「DBA_DRDAASPACKAGEデータ・ディクショナリ・ビューの説明」を参照してください。

8.2.10 USER_DRDAASPACKAUTHデータ・ディクショナリ・ビュー

このビューは、grantee列の現在のSQLユーザーIDに一致する行のみを戻します。

ビューUSER_DRDAASPACKAUTHは、DBA_DRDAASPACKAUTHの上にマップされます。これは、ユーザーSYSIBMによって所有されています。この表から選択するには、ユーザーにDRDAAS_USER_ROLEが必要です。DRDAAS_USER_ROLEを参照してください。

このビューには、DBA_DRDAASPACKAUTH表と同じ列定義が含まれています。「DBA_DRDAASPACKAUTHデータ・ディクショナリ・ビューの説明」を参照してください。

8.2.11 USER_DRDAASPACKSIDEデータ・ディクショナリ・ビュー

このビューはアプリケーション・サーバーによって内部的に使用されます。

ビューUSER_DRDAASPACKSIDEは、DBA_DDRDAASPACKSIDEの上にマップされます。これは、ユーザーSYSIBMによって所有されています。ユーザーがこの表から選択するためには、DRDAAS_USER_ROLEを持っている必要があります。「DRDAAS_USER_ROLE」を参照してください。

このビューには、DBA_DRDAASPACKSIDE表と同じ列定義が含まれています。「DBA_DRDAASPACKSIDEデータ・ディクショナリ・ビューの説明」を参照してください。

8.2.12 USER_DRDAASPACKSTMTデータ・ディクショナリ・ビュー

このビューは、creator列またはowner列が現在のSQLユーザーIDに一致し、そのユーザーIDに、パッケージのCOLLIDおよびnameに一致するDBA_DRDAASPACKAUTHEXECUTE_PRIVILEGEが付与されている行のみを戻します。

ビューUSER_DRDAASPACKSTMTは、DBA_DRDAASPACKSTMT表にマップされます。これは、ユーザーSYSIBMによって所有されています。ユーザーがこの表から選択するためには、DRDAAS_USER_ROLEを持っている必要があります。「DRDAAS_USER_ROLE」を参照してください。

このビューには、DBA_DRDAASPACKSTMT表と同じ列定義が含まれています。「DBA_DRDAASPACKSTMTデータ・ディクショナリ・ビューの説明」を参照してください。

8.2.13 USER_DRDAASTRACEデータ・ディクショナリ・ビュー

このビューは、現在のユーザーのユーザーIDと一致する行のみを戻します。

この機能はデバッグ専用です。

ビューUSER_DRDAASTRACEDBA_DRDAASTRACEビューにマップされます。これは、ユーザーSYSIBMによって所有されています。このビューにアクセスするユーザーには、DRDAAS_USER_ROLEが付与されている必要があります。DRDAAS_USER_ROLEを参照してください。

このビューの列定義は、caller列を除いてUSER_DRDAASTRACEビューと同じです。「DBA_DRDAASPATRACEデータ・ディクショナリ・ビュー」を参照してください。