Hitachi

Hitachi Advanced Data Binder AP開発ガイド


16.7.4 SQLSetCursorName,SQLSetCursorNameW

〈この項の構成〉

(1) 機能

カーソル名をアクティブなステートメントハンドルに関連づけます。アプリケーションがこの関数を呼び出さない場合,HADB ODBCドライバがカーソル名を生成します。

(2) 形式

(3) 引数

StatementHandle:

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

CursorName:

関連づけるカーソルの名称を指定します。

NameLength:

*CursorNameの長さを指定します(単位:SQLSetCursorNameの場合はバイト長,SQLSetCursorNameWの場合は文字数)。

CursorNameに指定した文字列がNULL終端文字を保証している場合,SQL_NTSを指定できます。

(4) 戻り値

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

(5) SQLSTATE

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

SQLSTATE

説明

備考

返却

01000

一般警告

×

01004

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

×

24000

無効なカーソル状態

StatementHandleに関連づけられたステートメントは,すでに実行状態またはカーソルが位置づけられた状態です。

34000

無効なカーソル名

  • カーソル名のサイズに,HADB ODBCドライバで扱える上限(30バイト)よりも大きいサイズが指定されています。

  • CursorNameに指定されたカーソル名がSQL_CURで始まっています。

3C000

カーソル名の重複

*CursorNameに指定されたカーソル名はすでに存在しています。

5C002

文字コードの変換エラー

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

HY000

一般エラー

×

HY001

メモリ割り当てエラー

×

HY009

NULLポインタの不正使用

CursorNameがNULLポインタです。

HY010

関数シーケンスエラー

HY013

メモリ管理エラー

メモリオブジェクトにアクセスできないため,関数の呼び出しを処理できません。

×

HY090

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

NameLengthに0以下かつSQL_NTS以外の値が指定されています。

HYT01

接続タイムアウト終了

データソースが要求に応答する前に接続タイムアウト時間が経過しました。接続タイムアウト時間は,SQLSetConnectAttrまたはSQLSetConnectAttrWSQL_ATTR_CONNECTION_TIMEOUTで設定できます。

×

IM001

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

×

(凡例)

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

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

−:なし。

(6) 注意事項

この関数で設定したカーソル名を使用する場合は,マイクロソフト社が提供するカーソルライブラリを使用してください。マイクロソフト社が提供するカーソルライブラリを使用しない場合,HADB ODBCドライバは設定されたカーソル名を無視します。