5.1 ゲートウェイのエラー・メッセージの解釈
ゲートウェイ・アーキテクチャは様々なコンポーネントで構成され、1つ以上のDRDAデータベース表を参照するSQL文を処理する際に、どのコンポーネントでもエラー状態が検出およびレポートされる可能性があります。
つまり、エラーは、複数のコンポーネントからのエラー・コードとサポート・データを含む複雑なものとなる可能性があります。 ただし、すべての場合において、アプリケーションが最終的に受け取るのは単一のエラー・コードまたはリターン・コードです。
ほとんどのゲートウェイ・メッセージは、Oracle SQL Communications Area (SQLCA)の70文字のメッセージ領域(プログラム・インタフェースおよびOracleコール・インタフェース)を超えているため、ゲートウェイを介したデータへのアクセスに使用するメッセージ・テキスト全体を表示するには、SQLGLMまたはOERHMSを使用する必要があります。 SQLGLMの詳細は、Oracleプリコンパイラのプログラマ・ガイドを参照し、OERHMSの詳細は、「Oracle C++コール・インタフェース・プログラマーズ・ガイド」を参照してください。
ゲートウェイの使用時に発生するエラーは、次のソースが原因となります:
- Oracle Databaseにより検出されたエラー
- ゲートウェイにより検出されたエラー
- クライアント側またはサーバー側のDRDAソフトウェアで検出されたエラー
- 通信エラー
- サーバー・データベースにより検出されたエラー
- 「ゲートウェイで検出されたエラー」
Oracleデータベースで検出されたエラーは、標準のORA
タイプのメッセージとともにアプリケーションまたはツールにレポートされます。 - 「DRDAソフトウェアで検出されたエラー」
DRDAゲートウェイ(クライアント側またはサーバー側)で検出されたエラーは、通常、エラーORA-28500
でレポートされ、その後にゲートウェイ固有の拡張エラー・メッセージが表示されます。 - 「DRDAサーバーで検出されたエラー」
DRDAサーバーで検出されたエラーは、ORA-28500
の後にゲートウェイ固有の拡張エラー・メッセージとともにレポートされます。
親トピック: エラー・メッセージ、診断およびレポート
5.1.1 ゲートウェイにより検出されたエラー
Oracleデータベースで検出されたエラーは、標準のORA
タイプのメッセージとともにアプリケーションまたはツールにレポートされます。
これらのエラーの詳細は、「Oracle Databaseエラー・メッセージ」を参照してください。 たとえば、未定義のデータベース・リンク名が指定されると、次のエラーが発生します。
ORA-02019: connection description for remote database not found
ORA-9100
からORA-9199
の範囲内のエラーは、汎用ゲートウェイ・レイヤー(DRDAに固有ではないゲートウェイのコンポーネント)用に予約されています。 この範囲のメッセージは、「Oracle Databaseエラー・メッセージ」に記載されています。
親トピック: ゲートウェイのエラー・メッセージの解釈
5.1.2 DRDAソフトウェアで検出されたエラー
DRDAゲートウェイ(クライアント側またはサーバー側)で検出されたエラーは、通常、エラーORA-28500
でレポートされ、その後にゲートウェイ固有の拡張エラー・メッセージが表示されます。
拡張メッセージでは、次の2つのリターン・コードがレポートされます。
drc
は、DRDA固有のエラーを指定します。grc
は、DRDAレイヤーで検出される汎用ゲートウェイ・エラーを指定します。 これらのエラーについては、「Oracle Databaseエラー・メッセージ」を参照してください。
ノート:
エラー・コードORA‐28500
は、ゲートウェイ・バージョン8より前のエラー・コードORA‐09100
でした。 エラー・コード ORA‐28501
は、ゲートウェイ・バージョン8より前のORA‐09101
としてリストされていました。
drc
値の後に続くカッコ内の値は、Oracle Support Servicesによるデバッグに使用されます。 errp
フィールドは、エラーを検出したプログラム(クライアントまたはサーバー)を示します。 存在する場合、 errmc
はエラー・トークンをリストします。
たとえば、i nitsid.ora
ファイルのDRDA_REMOTE_NAME
パラメータで指定されたデータベース名がDRDAサーバーで定義されていない場合、次のエラー・メッセージが返されます:
ORA-28500: connection from ORACLE to non-Oracle system returned the message:
親トピック: ゲートウェイのエラー・メッセージの解釈
5.1.3 DRDAサーバーで検出されたエラー
DRDAサーバーで検出されたエラーは、ORA-28500
の後にゲートウェイ固有の拡張エラー・メッセージとともにレポートされます。
使用している特定のデータベースに関するIBM社のドキュメントを参照してください。 変換されるSQLエラーについては、「マップ済エラー」も参照してください。
ノート:
エラー・コードORA‐28500
は、ゲートウェイ・バージョン8より前のエラー・コード ORA‐09100
でした。 エラー・コードORA‐28501
は、ゲートウェイ・バージョン8より前のORA‐09101
としてリストされていました。
たとえば、次のエラー・メッセージは、DRDAサーバーがinitSID.ora
ファイルのHS_FDS_CONNECT_INFO
パラメータで指定されたDB2データベース名を見つけなかったことを示しています:
ORA-28500: connection from ORACLE to a non-Oracle system returned this message: [Oracle][ODBC DB2 Wire Protocol driver]Remote Database Not Found: UNKNOWN
親トピック: ゲートウェイのエラー・メッセージの解釈