19.5.12 a_rdb_CNV_VARBINARYchar()(VARBINARY型データの変換)
(1) 機能
SQLのVARBINARY型のデータをC言語またはC++言語の文字列データに変換します。VARBINARY型のデータを文字列データに変換する場合の例を次の図に示します。
- [説明]
-
VARBINARY型のデータを次の文字列定数の形式に変換し,格納領域の先頭から格納します。末尾には,ナル文字(0x00)が付加されます。
-
変換後の文字列データの形式が2進数の場合:2進形式バイナリ定数
-
変換後の文字列データの形式が16進数の場合:16進形式バイナリ定数
-
(2) 形式
#include <adbcnv.h> signed short a_rdb_CNV_VARBINARYchar ( a_rdb_VARBINARY_t *VARBINARY_Data, /* In */ unsigned short VARBINARY_Length, /* In */ unsigned short char_Type, /* In */ char *char_Data, /* Out */ unsigned int BufferLength, /* In */ void *Option /* In */ )
(3) 引数の説明
- VARBINARY_Data:
-
変換前のVARBINARY型のデータを格納している領域の先頭アドレスを指定します。
- VARBINARY_Length:
-
変換前のVARBINARY型のデータの長さを指定します(単位:バイト)。1〜32,000を指定できます。
- char_Type:
-
変換後の文字列データの形式を指定します。次のどちらかを指定してください。
-
変換後の文字列データの形式が2進数の場合
a_rdb_CNV_CHAR_TYPE_BINARY
-
変換後の文字列データの形式が16進数の場合
a_rdb_CNV_CHAR_TYPE_HEX
-
- char_Data:
-
変換後の文字列データ(C言語またはC++言語の文字列データ)を格納する領域の先頭アドレスを指定します。
- BufferLength:
-
変換後の文字列データを格納する領域の長さを指定します(単位:バイト)。次のどちらかの値を指定してください。
-
変換後の文字列データの形式が2進数の場合
VARBINARY_Lengthの値×8+1
-
変換後の文字列データの形式が16進数の場合
VARBINARY_Lengthの値×2+1
-
- Option:
-
NULLを指定します。値を指定しても無視されます。
(4) 戻り値
-
a_rdb_CNV_VARBINARYchar()が正常に終了した場合,a_rdb_RC_CNV_SUCCESSが返却されます。
-
エラーが発生した場合,戻り値にエラーコードが返却されます。エラーコードについては,「19.8 CLI関数の戻り値」を参照してください。
(5) 留意事項
変換前のデータ格納領域(VARBINARY_Data)と,変換後のデータ格納領域(char_Data)は重複しないようにしてください。