機械翻訳について

5.1 ゲートウェイのエラー・メッセージの解釈

ゲートウェイ・アーキテクチャは様々なコンポーネントで構成され、1つ以上のDRDAデータベース表を参照するSQL文を処理する際に、どのコンポーネントでもエラー状態が検出およびレポートされる可能性があります。

つまり、エラーは、複数のコンポーネントからのエラー・コードとサポート・データを含む複雑なものとなる可能性があります。 ただし、すべての場合において、アプリケーションが最終的に受け取るのは単一のエラー・コードまたはリターン・コードです。

ほとんどのゲートウェイ・メッセージは、Oracle SQL Communications Area (SQLCA)の70文字のメッセージ領域(プログラム・インタフェースおよびOracleコール・インタフェース)を超えているため、ゲートウェイを介したデータへのアクセスに使用するメッセージ・テキスト全体を表示するには、SQLGLMまたはOERHMSを使用する必要があります。 SQLGLMの詳細は、Oracleプリコンパイラのプログラマ・ガイドを参照し、OERHMSの詳細は、Oracle C++コール・インタフェース・プログラマーズ・ガイドを参照してください。

ゲートウェイの使用時に発生するエラーは、次のソースが原因となります:

  • Oracle Databaseにより検出されたエラー
  • ゲートウェイにより検出されたエラー
  • クライアント側またはサーバー側のDRDAソフトウェアで検出されたエラー
  • 通信エラー
  • サーバー・データベースにより検出されたエラー

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