表19-15は、この項で説明しているOCI参照(REF)関数を示しています。
表19-15 REF関数
| 関数 | 用途 |
|---|---|
|
|
1つの |
|
|
|
|
|
16進文字列を |
|
|
|
|
|
2つの |
|
|
|
|
|
|
パラメータ
オブジェクト・モードで初期化されたOCI環境ハンドルです。
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
コピー元のREFです。
コピー先のREFです。
構文
sword OCIRefFromHex ( OCIEnv *env,
OCIError *err,
const OCISvcCtx *svc,
const OraText *hex,
ub4 length,
OCIRef **ref );
パラメータ
オブジェクト・モードで初期化されたOCI環境ハンドルです。
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
OCIサービス・コンテキスト・ハンドルです(結果のREFがこのサービス・コンテキストで初期化される場合)。
REFに変換する16進テキスト文字列で、以前にOCIRefToHex()によって出力されたものです。
16進文字列の長さです。
16進文字列が変換先となるREFです。入力時に*refがNULLの場合は、そのREF用の領域がオブジェクト・キャッシュ内に割り当てられます。それ以外の場合は、指定のREFによって占有されているメモリーが再利用されます。
構文
sword OCIRefToHex ( OCIEnv *env,
OCIError *err,
const OCIRef *ref,
OraText *hex,
ub4 *hex_length );
パラメータ
オブジェクト・モードで初期化されたOCI環境ハンドルです。
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
16進文字列に変換するREFです。refがNULLのREF (つまり、OCIRefIsNull(ref) == TRUE)の場合は、0(ゼロ)のhex_length値が戻されます。
結果の16進文字列を格納するのに十分なバッファです。文字列の内容は、コール元にとっては不透明になります。
入力ではhexバッファのサイズを指定し、出力ではhexで戻される16進文字列の実際のサイズを指定します。