8.2.1 C++クラスライブラリで発生するエラー情報

C++クラスライブラリで発生するエラーのエラーコードとそれに対応するメッセージテキストを表8-1に示します。

表8-1 エラーコードとそれに対応するメッセージテキスト

エラーコードメッセージテキスト
DB_DRV_ERROR_AT_NOT_PARAM動的にSQLを実行するためのパラメタが指定されていません。
DB_DRV_ERROR_CANNOT_FILE_ACCESS接続しているDBMSではファイルアクセスできません。
DB_DRV_ERROR_CONNECT_HANDLEコネクトハンドルが取得できませんでした。
DB_DRV_ERROR_CONNECT_NAME_ALREADY指定された接続名で既に接続されています。
DB_DRV_ERROR_CURSORIDカーソルIDの取得ができません。カーソルID(1~64)がすべて使用中です。
DB_DRV_ERROR_CURSOR_COUNTカーソルの個数が上限値を超えたためオープンできません。
DB_DRV_ERROR_CURSOR_NOT_DECLAREカーソルが定義されていません。
DB_DRV_ERROR_CURSOR_NOT_OPENカーソルがオープンされていません。
DB_DRV_ERROR_DATA_CONVERTデータ変換でエラーが発生しました。
DB_DRV_ERROR_DBNAME_NULLデータベース名が指定されていません。
DB_DRV_ERROR_DECIMAL_TYPEDECIMALデータは扱うことができません。
DB_DRV_ERROR_EXIST_OTHER_TYPE_DATA同一フィールドに異なる型のデータがセットされています。
DB_DRV_ERROR_FIELD_NOT_NULL指定されたフィールドはNULLを設定できません。
DB_DRV_ERROR_INIT_ERROR初期化でエラーが発生しました。
DB_DRV_ERROR_INVALID_ACCESS_TYPESetData関数又はSetFieldData関数で指定した設定先はファイルアクセス専用です。
DB_DRV_ERROR_INVALID_ARGUMENTメソッドの引数に誤りがあります。
DB_DRV_ERROR_INVALID_COLUMN_TYPE選択リスト又はストアドプロシジャのパラメタ中にサポートされていないデータ型があります。
DB_DRV_ERROR_INVALID_CONNECT_NAME接続名が不正です。
DB_DRV_ERROR_INVALID_MAX_SIZE格納領域の最大長指定が不正です。
DB_DRV_ERROR_INVALID_SQL指定されたSQL文が不正です。
DB_DRV_ERROR_INVALID_SQL_EXCLUSIVEWITH句指定ではEXCLUSIVEロックを使用できません。
DB_DRV_ERROR_INVALID_SQL_TYPESetSQL関数が実行されていないか,SQLがSELECT文ではありません。
DB_DRV_ERROR_INVALID_TABLELIST_TYPEテーブルの一覧表示以外はサポートされていません。
DB_DRV_ERROR_IN_ERRORエラー処理中にエラーが発生しました。
DB_DRV_ERROR_NOT_ALLOC_PARAM_AREAパラメタ設定領域が確保されていません。
DB_DRV_ERROR_NOT_BIND_PHOLDER関連付けられていないプレースホルダがあります。
DB_DRV_ERROR_NOT_ENOUGH_MEMORYメモリ不足のため処理を続行できません。
DB_DRV_ERROR_NOT_PLACE_HOLDERSQL文にプレースホルダがないのでパラメタ領域を確保できません。
DB_DRV_ERROR_NOT_SET_OBJECT指定された接続名でオブジェクトは登録されていません。
DB_DRV_ERROR_NOT_SPECIFIED_MAX_SIZE設定済みSQL文に対して領域の最大長指定はできません。
DB_DRV_ERROR_NOT_SUPORT_TABLE_LISTシノニムの一覧表示はサポートされていません。
DB_DRV_ERROR_OUTPUT_NOT_FOUNDOUTPUTデータがありません。
DB_DRV_ERROR_PHOLDER_AND_QPプレースホルダと?パラメタが混在するSQL文の指定はできません。
DB_DRV_ERROR_PROC_COLUMN_LISTプロシジャのフィールド情報は取得できません。(ORACLE)
DB_DRV_ERROR_RDA_FILE_ACCESS_PARAM_TYPELONG型以外のパラメタでファイルアクセスはできません。
DB_DRV_ERROR_RDA_PARAM_TYPEパラメタの型が未設定か又は設定された型が不正です。
DB_DRV_ERROR_READ_ONLY_RESULTSET参照専用のResultSetでは,レコードを更新できません。
DB_DRV_ERROR_REQUEST_LIST_ROWSテーブル又はフィールド名一覧の取得要求数が不正です。
DB_DRV_ERROR_REQUEST_RESULTSET_ROWSResultSetの生成に要求されたレコード数が不正です。
DB_DRV_ERROR_RESULTSET_NOT_FOUNDResultSetが生成されていません。
DB_DRV_ERROR_SELECT_SET_OPERATION集合演算子(UNIONなど)を含むSQL文では更新可能なResultSetを生成できません。
DB_DRV_ERROR_SETDATA_TYPE設定データと設定先の型が一致していません。
DB_DRV_ERROR_SETFIELDDATAパラメタの設定先(フィールド又はレコード番号)が不正です。
DB_DRV_ERROR_SET_OVER_SIZE指定された領域長が不正です。
DB_DRV_ERROR_SQL_NOT_FOUNDSQL文が設定されていません。
DB_DRV_ERROR_STAT_COUNTステートメントの個数が上限値を超えました。
DB_DRV_ERROR_UPDATE_RESULTSET_NOT_FOUND更新可能なResultSetが生成されていません。
DB_DRV_ERROR_USERID_NULLユーザIDが指定されていません。
DB_ERROR_CANNOT_ACCESS_WHILE_EXECUTEDSQLを実行中に当該SQLで使用されているDBRArrayDataクラスのインスタンスにアクセスすることはできません。
DB_ERROR_CANNOT_USE_NONXADRIVER非XAインターフェース用に作成されたDBDriverオブジェクトは,XAインターフェース用として使用できません。
DB_ERROR_CANNOT_USE_XADRIVERXAインターフェース用に作成されたDBDriverオブジェクトは,非XAインターフェース用として使用できません。
DB_ERROR_ALREADY_CONNECTED既にデータベースに接続されています。
DB_ERROR_ALREADY_REGISTEREDDBTransactionオブジェクトは既に登録されています。
DB_ERROR_ARGUMENT_OUT_OF_RANGEメソッドの引数は指定できる範囲を超えています。
DB_ERROR_BEFORE_EXECUTEExecuteメソッドが実行されていません。
DB_ERROR_CANCEL_FAILURE実行中の処理をキャンセルできませんでした。
DB_ERROR_CANNOT_BE_NULL文字列を指定する引数にNULLは指定できません。
DB_ERROR_CANNOT_EDIT_LAST_RECORDカレントレコードは最後のレコードを超えています。更新はできません。
DB_ERROR_CANNOT_EXECUTESQL文を実行できません。コミット又はロールバック実行のタイミングが不明です。
DB_ERROR_CANNOT_FIND_OBJECT指定した名前を持つオブジェクトはありません。
DB_ERROR_CANNOT_GET_RESULTSETプロシジャが検索結果を返さないため検索結果は取得できません。
DB_ERROR_CANNOT_REFRESHRefreshメソッドは使用できません。
DB_ERROR_CANNOT_USE_ABSTRACTNAMEデータベース種別名が指定されていないためデータベース名は指定できません。
DB_ERROR_CANNOT_USE_DBCALLABLEDBCallableStatementオブジェクトから作成されたDBResultSetを使用する場合,このメソッドは実行できません。
DB_ERROR_CANNOT_USE_IN_CLOSEほかのスレッドでExecuteメソッド又はCloseメソッドを実行中のため,呼び出したメソッドは実行できません。
DB_ERROR_CANNOT_USE_IN_EXECUTEほかのスレッドでExecuteメソッドを実行中のため,呼び出したメソッドは実行できません。
DB_ERROR_CANT_UPDATE参照専用のDBResultSetオブジェクトは更新できません。
DB_ERROR_CAN_EXECUTE_SINGLE_SQL今バージョンではエージェントで実行できるSQL文は一つだけです。
DB_ERROR_CONNECTDBDEFINITIONNAME_LENGTH_IS_ZERO指定したデータベース名の長さが0です。
DB_ERROR_CONNECTION_FAILEDDBMSとの接続に失敗しました。
DB_ERROR_CONNECTSTRING_INVALID接続文字列の形式が正しくありません。
DB_ERROR_CONSTRATION更新レコードの内容は,データベースの整合性チェックに違反します。
DB_ERROR_CONVERT_ARRAY_TO_SCALAR繰り返し構造のデータとスカラ型のデータは相互に変換できません。
DB_ERROR_CURRENT_RECORD_DELETEDカレントレコードは削除されています。
DB_ERROR_DAB_ACCESS_ERRORDABrokerでエラーが発生しました。詳細情報はDBSQLCAに設定されます。
DB_ERROR_DAB_ALREADY_LOADINGドライバプログラムは既にロードしています。
DB_ERROR_DAB_ILLEGAL_VALUE指定した引数が不正です。詳細情報はDBSQLCAに設定されます。
DB_ERROR_DAB_SYSTEMCALL_ERRORシステムコールでエラーが発生しました。詳細情報はDBSQLCAに設定されます。
DB_ERROR_DAB_UNINITIALIZEデータベースに接続していません。
DB_ERROR_DATA_CANNOT_CONVERT設定されたデータをDBMSの正しいデータ型に変換できません。
DB_ERROR_DATA_TRUNCATEDデータ変換でエラーが発生しました。GetParamメソッド,GetFieldメソッド,SetFieldメソッドの場合,取得するデータ型を修正する必要があります。
DB_ERROR_DBDEFINITION_IS_UNAVAILABLE_IN_XAXAインタフェース使用時には接続先データベース定義は利用できません。
DB_ERROR_DBDEFINITIONNAME_LENGTH_IS_ZERO指定したデータベース種別名の長さが0です。
DB_ERROR_DRIVER_ERRORDBMSでエラーが発生しました。詳細情報はDBSQLCAに設定されます。
DB_ERROR_DRIVER_NOT_LOADEDドライバがロードされていません。
DB_ERROR_FIELD_NOT_DUPLICATABLE指定されたフィールドは重複した値を設定できません。
DB_ERROR_FIELD_NOT_NULL指定されたフィールドはNULLを設定できません。
DB_ERROR_FILE_NOT_FOUNDファイルが見つかりません。
DB_ERROR_FILE_READ_ERRORファイルの読込みでエラーが発生しました。
DB_ERROR_FUNCION_NOT_READYメソッドを呼び出すための準備ができていません。
DB_ERROR_INITIALIZE_ERROR初期化に失敗しました。メモリ不足か環境設定の不正のため,このまま処理を続けることはできません。作成したDBDriverManagerオブジェクトは使用できません。
DB_ERROR_INSTALLPATH_READ_ERRORレジストリからのインストールパスの取得に失敗しました。
DB_ERROR_INVALID_ARGUMENTメソッドの引数に誤りがあります。
DB_ERROR_IN_ASYNC_EXECUTESQL文の非同期実行処理中です。
DB_ERROR_IN_TRANSACTIONトランザクションは既に開始されています。
DB_ERROR_IN_USE_OTHER_THREADSオブジェクトはほかのスレッドで使用されているため,メソッドを実行できません。
DB_ERROR_MAXSIZE_NOT_EVEN文字列の最大長が奇数の時に2バイト文字を使用することはできません。
DB_ERROR_MISSMATCH_DBMSKIND_IN_ENVFILE環境情報[DAB_DBMSNAME]の値が間違っています。
DB_ERROR_NAME_ALREADY_USED指定した名称は既に使用されています。
DB_ERROR_NAME_INVALID指定した名前は不正です。
DB_ERROR_NOT_CONNECTEDデータベースに接続していません。
DB_ERROR_NOT_ENOUGH_MEMORYメモリ不足のため処理を続行できません。
DB_ERROR_NOT_EXECUTE_ASYNCXAインターフェース使用時に非同期処理は指定できません。
DB_ERROR_NOT_FOUND指定されたフィールドはありません。
DB_ERROR_NOT_FOUND_DBDEFINITION接続先データベース定義情報が見つかりません。
DB_ERROR_NOT_FOUND_DBMSKIND_IN_ENVFILE環境情報にDBMS種別を定義する変数[DAB_DBMSNAME]が定義されていません。
DB_ERROR_NOT_FOUND_USERID_IN_ENVFILE環境情報に接続するユーザIDを定義する変数[DABCONNECT_USERID]が定義されていません。
DB_ERROR_NOT_IN_EDIT更新のための準備ができていません。
DB_ERROR_NOT_IN_TRANSACTIONステートメントごとの自動コミットが設定されています。
DB_ERROR_NOT_RELATIONSHIP_TO_DBRDATABASE指定されたDBRDatabaseオブジェクトと関連付けることができませんでした。一つのDBRDatabaseオブジェクトに対して関連付けられるオブジェクトは64個までです。
DB_ERROR_NOT_SELECT_STATEMENT指定されたSQL文はSELECT文ではありません。SELECT文を指定してください。
DB_ERROR_NOT_SUPPORTEDこのバージョンではサポートされていません。
DB_ERROR_NOT_SUPPORT_XA指定したDriverタイプでは,XAインターフェースを使用できません。
DB_ERROR_NOT_UPDATE_INSERTSQLがUPDATE文でもINSERT文でもないためこのメソッドは無効です。
DB_ERROR_NO_AGENTBODY_INFORMATIONDBRAgentBodyクラスに属する登録情報がありません。SetRegisterメソッドを使用して登録情報を設定してください。
DB_ERROR_NO_AGENTCORE_INFORMATIONDBRAgentCoreクラスに属する登録情報がありません。SetRegisterメソッドを使用して登録情報を設定してください。
DB_ERROR_NO_AGENTOTHER_INFORMATIONDBRAgentOtherクラスに属する登録情報がありません。SetRegisterメソッドを使用して登録情報を設定してください。
DB_ERROR_NO_AGENTSQLLIST_INFORMATIONDBRAgentSQLListクラスに属する登録情報がありません。SetRegisterメソッドを使用して登録情報を設定してください。
DB_ERROR_NO_CONNECTION_OBJECTトランザクションにDBConnectionが登録されていません。
DB_ERROR_NO_DATA_AREAデータ領域が存在しません。
DB_ERROR_NO_INSTANCE指定されたDBRArrayDataPtrまたはDBRArrayDataConstPtrオブジェクトはDBRArrayDataクラスのインスタンスを保持していません。
DB_ERROR_NO_REGISTER_INFORMATIONエージェントの登録情報がありません。SetRegisterメソッドを使用して登録情報を設定してください。
DB_ERROR_OCCURRED_IN_CONSTRUCTORコンストラクタでエラーが発生しました。エラーの内容はGetErrorStatusメソッドでDBSQLCAオブジェクトを取得して参照してください。
DB_ERROR_OCCURRED_UNDER_ERROR_TRANSACTIONエラー処理中にメモリ不足になりました。
DB_ERROR_OUT_OF_RANGENextメソッド,PageNextメソッドが最後のレコードを超えて呼び出されました。
DB_ERROR_OUT_OF_RESULTSETResultSetの範囲を超えてカレントレコードを移動しようとしました。
DB_ERROR_OVER_LAST_AGENTRESULT最後の実行結果の次の実行結果を取得しようとしました。
DB_ERROR_OVER_MAX_CURSORSすべてのカーソルを使用中です。ステートメントを削除するなどして空きカーソルを増やしてから再度実行してください。
DB_ERROR_PARAM_NOT_FOUND指定されたパラメタはありません。
DB_ERROR_PREPARE_ERRORエージェントの実行結果取得の準備に失敗しました。設定情報を見直して再度Executeメソッドを実行してください。
DB_ERROR_PROCEDURE_NOT_COMPLETEプロシジャの実行が終了していません。
DB_ERROR_PROCEDURE_NOT_EXECUTEプロシジャが実行されていません。
DB_ERROR_PROCEDURE_NOT_SETプロシジャが指定されていません。
DB_ERROR_RESULTSET_NOT_EXIST検索結果が取得できていません。
DB_ERROR_SELECT_NOT_EXECUTEDSELECT文が実行されていません。ExecuteメソッドでSELECT文を実行してからOpenメソッドを呼び出してください。
DB_ERROR_STATEMENT_WITHOUT_PARAMETERDBPreparedStatementオブジェクトを使用していないため,パラメタの取得・設定はできません。
DB_ERROR_SYNTAX_ERROR指定されたSQL文に誤りがあります。詳細はDBSQLCAに設定されます。
DB_ERROR_TIMEOUTタイムアウトが発生したため制御を戻します。
DB_ERROR_TOO_LARGE_DATA指定したデータの値は大きすぎます。
DB_ERROR_USER_DEFINED_ERROR_NOT_LOADEDDBMS非依存エラー情報は読み込まれていません。