16.9.6 SQLFetch
(1) 機能
結果セットから次の行セットのデータをフェッチし,SQLBindColで関連づけられたすべての列にデータを返します。
(2) 形式
SQLRETURN SQLFetch ( SQLHSTMT StatementHandle /* In */ )
(3) 引数
- StatementHandle:
-
ステートメントハンドルを指定します。
(4) 戻り値
SQL_SUCCESS,SQL_SUCCESS_WITH_INFO,SQL_NO_DATA,SQL_ERROR,またはSQL_INVALID_HANDLEが返されます。
(5) SQLSTATE
この関数では次のSQLSTATEを返します。
SQLSTATE |
説明 |
備考 |
返却 |
---|---|---|---|
01000 |
一般警告 |
− |
× |
01004 |
文字列データの右側が切り捨てられた |
列に返された文字列またはバイナリのデータで,空白以外の文字またはNULL以外のバイナリデータが切り捨てられました。文字列の値は,その右側が切り捨てられました。 |
○ |
01S01 |
行のエラー |
1つ以上の行のフェッチでエラーが発生しました。 |
× |
01S07 |
小数点以下切り捨て |
数値の小数部分が切り捨てられました。時刻部分を含む時刻,タイムスタンプまたは間隔データ型の場合,時刻の小数部分が切り捨てられました。このとき,SQL_SUCCESS_WITH_INFOを返します。 |
○ |
01S51 |
文字コード変換時に置き換えが発生した |
変換できない文字コードを検出し,指定の文字に置き換えました。このとき,SQL_SUCCESS_WITH_INFOを返します。 |
○ |
07006 |
データ型属性の制限違反 |
結果セットの列のデータ値をSQLBindColのTargetTypeで指定されたデータ型に変換できません。 |
○ |
07009 |
無効なディスクリプタインデクス |
− |
○ |
08S01 |
通信リンク失敗 |
× |
|
22001 |
文字列データの右側が切り捨てられた |
× |
|
22002 |
必要な標識変数が提供されない |
次のどちらかがNULLポインタである列に,NULLデータがフェッチされました。
|
○ |
22003 |
数値が範囲外である |
数値(数値または文字列)の整数部分が削除されました。 |
○ |
22007 |
無効な日付時刻形式 |
文字の列が日付,時刻またはタイムスタンプのCの構造体にバインドされましたが,列の値が無効な日付,時刻,またはタイムスタンプです。 |
○ |
22012 |
ゼロ除算 |
ゼロ除算が行われた算術式の値が返されました。 |
× |
22015 |
間隔フィールドのオーバフロー |
− |
× |
22018 |
キャスト指定に対する無効な文字値 |
○ |
|
24000 |
無効なカーソル状態 |
StatementHandleは実行状態ですが,関連する結果セットがありません。 |
○ |
40001 |
直列化の失敗 |
− |
× |
40003 |
ステートメントの完了が不明 |
× |
|
5C002 |
文字コード変換エラー |
○ |
|
5C037 |
データフォーマットエラー |
○ |
|
5C038 |
データ変換エラー |
取得した結果データまたは受け取り領域の指定内容のどちらかに誤りがあります。 |
○ |
HY000 |
一般エラー |
− |
× |
HY001 |
メモリ割り当てエラー |
HADB ODBCドライバは,関数の実行または完了をサポートする必要なメモリを割り当てられていません。 |
× |
HY003 |
無効なアプリケーションのバッファのデータ型 |
SQLBindColによって設定されたCデータ型が不正なデータ型です。 |
○ |
HY008 |
動作がキャンセルされた |
− |
× |
HY009 |
NULLポインタの不正使用 |
○ |
|
HY010 |
関数シーケンスエラー |
○ |
|
HY013 |
メモリ管理エラー |
○ |
|
HY090 |
無効な文字列長または無効なバッファ長 |
○ |
|
HY104 |
無効な精度または無効なスケール値 |
○ |
|
HY107 |
行の値が範囲外である |
× |
|
HYC00 |
オプション機能は実装されていない |
HADB ODBCドライバまたはHADBサーバは,SQLBindColのTargetTypeと対応する列のSQLデータ型の組み合わせで指定される変換をサポートしていません。 |
○ |
HYT01 |
接続タイムアウト終了 |
− |
× |
IM001 |
ドライバはこの関数をサポートしていない |
× |
- (凡例)
-
○:HADB ODBCドライバが返すことがあるSQLSTATEです。
×:HADB ODBCドライバが返さないSQLSTATEです。
−:なし。
(6) 注意事項
行ステータス配列に対して行ステータスを返却する機能はサポートしていません。