仕様: | DB2 CLI 5.2 | ISO CLI |
データ・リンク値の現在の属性値を戻します。
構文
SQLRETURN SQLGetDataLinkAttr(SQLHSTMT StatementHandle, SQLSMALLINT Attribute, SQLCHAR FAR *DataLink, SQLINTEGER DataLinkLength, SQLPOINTER *ValuePtr, SQLINTEGER BufferLength, SQLINTEGER FAR *StringLengthPtr);
関数引き数
データ・タイプ | 引き数 | 使用法 | 説明 |
---|---|---|---|
SQLHSTMT | StatementHandle | 入力 | 診断報告専用です。 |
SQLSMALLINT | 属性 | 入力 | 抽出されるデータ・リンクの属性を識別します。有効値は以下のとおりです。
|
SQLCHAR * | DataLink | 入力 | 属性が抽出される元の DATALINK 値。 |
SQLINTEGER | DataLinkLength | 入力 | DATALINK 値の長さ。 |
SQLPOINTER * | ValuePtr | 出力 | Attribute で指定される属性の値を返す先のメモリーを指すポインター。 |
SQLINTEGER | BufferLength | 入力 | 属性バッファーの長さ。 |
SQLINTEGER | *StringLength | 出力 | *Attribute 内に戻すために使用できる総バイト数 (ヌル終了文字を除く) を戻すバッファーを指すポインター。 Attribute がヌル・ポインターである場合、長さは戻されません。戻りに使用できるバイト数が、ヌル終了文字の長さを引いた BufferLength より大きい場合は、SQLSTATE HY090 が戻されます。 |
使用法
この関数は、データベースから検索された DATALINK 値、または SQLBuildDataLink() を使用して構築された DATALINK 値と一緒に使用されます。 AttrType 値は、戻される DATALINK 値から属性を判別します。ヌル終了文字を含むストリングの最大長は、BufferLength バイトになります。
データ・リンクの詳細については、管理の手引き: 計画 を参照してください。
戻りコード
診断
表 97. SQLExtendedBind() SQLSTATE
SQLSTATE | 説明 | 解説 |
---|---|---|
01000 | 警告 | 通知メッセージ。 (関数は、SQL_SUCCESS_WITH_INFO を返します。) |
HY000 | 一般的なエラーです。 | 特定の SQLSTATE がなかった場合のエラーが発生しました。 SQLGetDiagRec() により *MessageText バッファーに返されたエラー・メッセージに、そのエラーと原因が記述されています。 |
01004 | 切り捨てられたデータ。 | *ValuePtr に戻されるデータは、 BufferLength からヌル終了文字の長さを引いた長さに切り捨てられます。 *StringLengthPtr には、切り捨て前のストリング値の長さが戻されます。 (関数は、SQL_SUCCESS_WITH_INFO を返します。) |
HY001 | メモリーの割り振り失敗です。 | DB2 CLI は、この関数の実行または完了をサポートするために必要なメモリーを割り当てられませんでした。 |
HY009 | 引き数値が無効です。 | 引き数 *DataLink に指定された値は、ヌル・ポインター、または無効でした。 |
HY090 | 無効なストリングまたはバッファー長。 | 引き数 BufferLength に指定された値は 0 より小さい値でした。または引き数 DataLinkLength に指定された値は 0 より小さく、 SQL_NTS と等しくありませんでした。 |
HY092 | オプション・タイプが範囲外です。 | 引き数 AttrType に指定された値は、無効でした。 |
制約
なし。
例を参照してください。
参照