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=RR、A=ALL、C=CS、G=CHG、N=NC (PKGISOLVI)

RELEASEOPT

CHAR(1)

C=COMMIT、D=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_DRDAASPACKAUTHでEXECUTE_PRIVILEGEが付与されている行のみを戻します。

ビューUSER_DRDAASPACKAGEはDBA_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_DRDAASPACKAUTHでEXECUTE_PRIVILEGEが付与されている行のみを戻します。

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

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

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

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

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

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

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