8.4.3.60 mysql_fetch_field()
8.4.3.60 mysql_fetch_field()
MYSQL_FIELD *mysql_fetch_field(MYSQL_RES *result)
8.4.3.61 Описание
8.4.3.61 Описание
Возвращает определение одного столбца из результирующего набора в виде структуры MYSQL_FIELD. Для извлечения информации обо всех столбцах в результирующем наборе следует вызывать эту функцию повторно. Если полей больше не остается, функция mysql_fetch_field() возвращает NULL.
Каждый раз при выполнении нового запроса SELECT функция mysql_fetch_field() сбрасывается в исходное состояние, чтобы возвращать информацию о первом поле. На поле, возвращенное функцией mysql_fetch_field(), также можно воздействовать, вызвав функцию mysql_field_seek().
Если вызвана функция mysql_query() для выполнения команды SELECT на таблице, но не вызвана функция mysql_store_result(), то MySQL возвращает установленную по умолчанию длину данных типа BLOB (8 Kб) при вызове функции mysql_fetch_field() для выяснения длины поля BLOB (Размер 8 Kб выбран потому, что MySQL в этом случае не знает максимальной длины для BLOB. Когда-нибудь эта конфигурация будет сделана перестраиваемой.) Поскольку результирующий набор извлечен, то выражение field->max_length содержит длину наибольшей величины для данного столбца в указанном запросе.
8.4.3.62 Возвращаемые значения
8.4.3.62 Возвращаемые значения
Структура MYSQL_FIELD для текущего столбца. NULL, если полей больше не остается.
8.4.3.63 Ошибки
8.4.3.63 Ошибки
Нет.
8.4.3.64 Пример
8.4.3.64 Пример
MYSQL_FIELD *field; while((field = mysql_fetch_field(result))) { printf("field name %s\n", field->name); }