Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
指定されたカラムのためにフェッチされた値を、指定されたバッファーに格納します。
public sacapi_bool sqlany_get_column( a_sqlany_stmt * sqlany_stmt, sacapi_u32 col_index, a_sqlany_data_value * buffer )
sqlany_stmt sqlany_execute() または sqlany_execute_direct() によって実行された文オブジェクト。
col_index 取り出すカラムの数。カラムの数は、0 ~ sqlany_num_cols() - 1 の間です。
buffer カラム col_index のためにフェッチされたデータを格納する a_sqlany_data_value オブジェクト。
成功した場合は 1、失敗した場合は 0。パラメーターのいずれかが無効であった場合、または SQL Anywhere データベースサーバーから完全な値を取り出すために必要なメモリがない場合は、失敗する可能性があります。
A_BINARY および A_STRING * データ型では、value->buffer は、結果セットに関連付けられている内部バッファーをポイントします。ポインターバッファーの内容は、新しいローがフェッチされたとき、または結果セットオブジェクトが解放されたときに変更されます。したがって、ポインターの内容を変更したり、内容に依存したりしないでください。ユーザーはこれらのポインターから各自のバッファーにデータをコピーする必要があります。
value->length フィールドは、value->buffer がポイントする有効な文字の数を示します。value->buffer で返されるデータは、NULL で終了しません。この関数は、SQL Anywhere データベースサーバーからのすべての戻り値をフェッチします。たとえば、カラムに 2GB の BLOB が含まれている場合、その値を保持するのに必要なメモリの割り付けはこの関数が行います。メモリの割り付けを行わない場合は、代わりに sqlany_get_data() を使用してください。