Hitachi

Hitachi Advanced Data Binder AP開発ガイド


16.8.4 SQLParamData

〈この項の構成〉

(1) 機能

SQLPutDataとこの関数を一緒に使用すると,SQL文の実行時,SQLExecuteSQLExecDirectまたはSQLExecDirectW実行後にパラメタデータを送信します。

(2) 形式

SQLRETURN SQLParamData
(
  SQLHSTMT        StatementHandle,    /* In */
  SQLPOINTER    * ValuePtrPtr         /* Out */
)

(3) 引数

StatementHandle

ステートメントハンドルを指定します。

この関数を実行する前にSQLAllocHandle*OutputHandlePtrで出力された値を指定します。

ValuePtrPtr

SQL文のパラメタデータの設定先を指すポインタが返されます。

有効な値が返されるのは,戻り値がSQL_NEED_DATAのときだけです。

また,この値はSQLBindParameterParameterValuePtrの値,またはSQLBindColTargetValuePtrの値と同じ値であり,ディスクリプタレコードのSQL_DESC_DATA_PTRフィールドに指定されたものと同じ値です。

(4) 戻り値

SQL_SUCCESSSQL_SUCCESS_WITH_INFOSQL_NO_DATASQL_NEED_DATASQL_ERROR,またはSQL_INVALID_HANDLEが返されます。

(5) SQLSTATE

この関数では次のSQLSTATEを返します。

SQLSTATE

説明

備考

返却

01000

一般警告

×

01004

文字列データの右側が切り捨てられた

07002

COUNTフィールドが不正

SQLBindParameterに指定されたパラメタの数が?パラメタの数と不一致です。

07006

データ型属性の制限違反

×

08003

接続が存在しない

08S01

通信リンク失敗

×

22001

文字列データの右側が切り捨てられた

22003

数値が範囲外である

22007

無効な日付時刻形式

22008

日付時刻フィールドのオーバフロー

22018

キャスト指定に対する無効な文字値

22026

文字列データの長さが一致しない

×

40001

直列化の失敗

×

40003

ステートメントの完了が不明

×

5C002

文字コードの変換エラー

変換できない文字コードを検出しました。

5C036

データ変換エラー

設定要求があった入力データの指定内容が誤っています。

5C041

データ型未サポートエラー

ドライバは指定されたデータ型をサポートしていません。

HY000

一般エラー

×

HY001

メモリ割り当てエラー

HY003

無効なCデータ型

HY004

無効なSQLデータ型

HY008

動作がキャンセルされた

×

HY009

NULLポインタの不正使用

ParameterCountPtrNULLが指定されています。

HY010

関数シーケンスエラー

HY013

メモリ管理エラー

HY014

無効な精度または無効なスケール値

HY090

無効な文字列長または無効なバッファ長

HY104

無効な精度または無効なスケール値

HY117

接続がサスペンド中

×

HYC00

オプション機能は実装されていない

HYT01

接続タイムアウト終了

×

IM001

ドライバはこの関数をサポートしていない

×

IM017

非同期ポーリングが不正

×

IM018

非同期実行が未完了

×

(凡例)

○:HADB ODBCドライバが返すことがあるSQLSTATEです。

×:HADB ODBCドライバが返さないSQLSTATEです。

−:なし。