П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 177606 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 74952 раз(а).

Учебник HTML.
Просмотров 73710 раз(а).

Руководство по PHP5.
Просмотров 44609 раз(а).

Хостинг через призму DNS.
Просмотров 51398 раз(а).

Подборка текстов стандартных документов.
Просмотров 44742 раз(а).

Учебник PHP - Самоучитель
Просмотров 50984 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 51428 раз(а).

Внешние атаки...
Просмотров 41644 раз(а).

Учебник PHP.
Просмотров 36929 раз(а).

SSI в примерах.
Просмотров 27652 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь





Глава 8. Интерфейсы для MySQL
Пред.     След.

8.4. Интерфейс C для MySQL
8.4.3. Описание функций интерфейса C

8.4.3.20. mysql_field_count()

unsigned int mysql_field_count(MYSQL *mysql)

При использовании более ранней, чем 3.22.24, версии MySQL необходимо вместо этого выражения использовать следующее: unsigned int mysql_num_fields(MYSQL *mysql).

Описание

Возвращает количество столбцов для последнего запроса в данном соединении.

Обычно эту функцию используют в случае, когда функция mysql_store_result() возвращает NULL (и, следовательно, нет ни одного указателя для результирующего набора). В этом случае можно вызвать функцию mysql_field_count() для определения, может ли функция mysql_store_result() выдать непустой результат. Это дает возможность данной клиентской программе выполнить соответствующее действие без уточнения, был ли данный запрос командой вида SELECT (или похожей на SELECT). Приведенный ниже пример иллюстрирует, как это можно сделать.

See Раздел 8.4.6.1, «Почему после успешных возвратов функции mysql_query() функция mysql_store_result() иногда возвращает NULL.

Возвращаемые значения

Беззнаковое целое число, представляющее количество полей в результирующем наборе.

Ошибки

Нет.

Пример

MYSQL_RES *result;
unsigned int num_fields;
unsigned int num_rows;

if (mysql_query(&mysql,query_string))
{
// ошибка
}
else // запрос выполнен, обработка возвращенных им данных
{
result = mysql_store_result(&mysql);
if (result) // содержит строки
{
num_fields = mysql_num_fields(result);
// извлечение строк, затем вызов mysql_free_result(result)
}
else // mysql_store_result() не вернула ничего; может ли что-либо вернуть?
{
if(mysql_field_count(&mysql) == 0)
{
// запрос не возвращает данные
// (запрос не был вида SELECT)
num_rows = mysql_affected_rows(&mysql);
}
else // mysql_store_result() должна была вернуть данные
{
fprintf(stderr, "Error: %s\n", mysql_error(&mysql));
}
}
}

Альтернатива состоит в замене вызова функции mysql_field_count(&mysql) вызовом функции mysql_errno(&mysql). В этом случае можно проверить, была ли данная команда вида SELECT, непосредственно по ошибке от mysql_store_result(), а не делать логический вывод по величине функции mysql_field_count().


Назад Начало Главы Начало Раздела Начало Подраздела Вперед

Пред. Глава След. Глава
Глава 7. Типы таблиц MySQL Начало Книги Глава 9. Расширение MySQL


Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru