MYSQL_FIELD *mysql_fetch_field(MYSQL_RES
*result)
説明
結果セットの定義をMYSQL_FIELD構造として規定したカラムに戻ってください。この機能を繰り返して呼び出して、結果セット中のすべてのカラムに関する情報を復元してください。フィールドがまだ残っているときには、mysql_fetch_field()はNULLを戻します。
mysql_fetch_field()はリセットされて、新しいSELECTクエリーを実行する度に、最初のフィールドに関する情報を戻します。mysql_fetch_field()によって戻されたフィールドは、mysql_field_seek()に対する呼び出しによっても影響を受けます。
mysql_query()を呼び出して、テーブル上でSELECTを実施したが、mysql_store_result()を呼び出さなかった場合、MySQLは、mysql_fetch_field()を呼び出して、BLOBフィールドの長さを求めると、デフォルトblobの長さ
(8KB)を戻します。(MySQLはBLOBに対する最大長さを知らないので、8KBのサイズが選ばれます。いつか、これを構成可能にすべきです。)結果セットを復元したと同時に、field->max_lengthには、特定クエリー中のこのカラムに対する最大値の長さが含まれます。
戻り値
現在のカラムのためのMYSQL_FIELD構造。NULLカラムが残っていない場合。
エラー
なし。
例
MYSQL_FIELD *field;
while((field = mysql_fetch_field(result)))
{
printf("field name %s\n", field->name);
}
