TTStatusリファレンス

TTStatusクラスは、TTClassesライブラリ内の他のクラスで、エラーおよび警告の例外を捕捉するために使用されます。TTStatusは、ODBC関数SQLErrorの付加価値C++ラッパーと考えることができます。

サブクラス

TTStatusには次のサブクラスがあります。

サブクラス 説明

TTError

TTErrorは、ODBCのエラー(リターン・コードSQL_ERRORおよびSQL_INVALID_HANDLE)をカプセル化するために使用されます。

TTWarning

TTWarningは、ODBCの警告(リターン・コードSQL_SUCCESS_WITH_INFO)をカプセル化するために使用されます。

TTErrorTTWarningの詳細は、TTCStatusの使用方法を参照してください。

パブリック・メンバー

メンバー 説明

rc

失敗したODBCコールからのリターン・コード(SQL_SUCCESSSQL_SUCCESS_WITH_INFOSQL_ERRORSQL_NO_DATA_FOUNDまたはSQL_INVALID_HANDLE)です

(ODBC 2.0リターン・コードSQL_NO_DATA_FOUNDsqlext.h(timesten.hによってインクルードされる)で定義されます。)

native_error

ODBCコールに失敗した場合のTimesTenネイティブ・エラー番号(存在する場合)です

odbc_error

ODBCコールに失敗した場合のODBCエラー状態です

err_msg

ODBCコールに失敗した場合のASCII形式の出力可能なエラー・メッセージです

パブリック・メソッド

この項では、TTStatusパブリック・メソッドの概要を説明します。

パブリック・メソッドの概要

メソッド 説明

isConnectionInvalid()

データベース接続が無効であるかどうかを示します。

operator<<

エラー・メッセージを出力します

throwError()

TTStatusオブジェクトからエラーをスローします(一般的には使用しません)。

isConnectionInvalid()

bool isConnectionInvalid() const

データベース接続が無効の場合はTRUEを返し、有効の場合はFALSEを返します。無効とは、具体的にはTimesTenエラー846または994が発生したときのことを意味します。Oracle TimesTen In-Memory Databaseエラー・メッセージおよびSNMPトラップエラー 0 - 999を参照してください。

演算子<<

演算子(<<)はエラー・メッセージを出力ストリームに書き込みます。次に、その例を示します。

try {
  // ...
  // something has gone wrong
    throw stat;
}
catch (TTStatus st) {
  cerr << "Caught exception: " << st << endl;
}

throwError()

void throwError()

これは標準的ではない、例外をスローする代替の方法です。(より一般的な使用方法は、前述の演算子<<の項に記載されています。)

try {
  // ...
  if (/* something has gone wrong */)
    stat.throwError();
}
catch (TTStatus st) {
  cerr << "Caught exception: " << st << endl;
}