MySQL

:: DEVELOPER ZONE

Login / Register

  • MySQL.com
  • Developer Zone
  • Partners
  • Online Shop
  • Downloads
  • Documentation
  • Forums
  • Lists
  • Bugs
  • Events
  • User Groups
  • Guilds
  • Blogs
  • Support
  • Resources
  • Books
  • FAQ

Справочное руководство по MySQL 4.0. :: 8 Интерфейсы для MySQL :: 8.4 Интерфейс C для MySQL :: 8.4.3 Описание функций интерфейса C :: 8.4.3.19 mysql_fetch_row()

  • Overview
  • MySQL Reference Manual
  • MaxDB Documentation
  • Connectors

Search the MySQL manual:


  • Справочное руководство по MySQL 4.0.

  • 8.4.3 Описание функций интерфейса C
  • 8.4.3.1 mysql_affected_rows()
  • 8.4.3.2 mysql_change_user()
  • 8.4.3.3 mysql_character_set_name()
  • 8.4.3.4 mysql_close()
  • 8.4.3.5 mysql_connect()
  • 8.4.3.6 mysql_create_db()
  • 8.4.3.7 mysql_data_seek()
  • 8.4.3.8 mysql_debug()
  • 8.4.3.9 mysql_drop_db()
  • 8.4.3.10 mysql_dump_debug_info()
  • 8.4.3.11 mysql_eof()
  • 8.4.3.12 mysql_errno()
  • 8.4.3.13 mysql_error()
  • 8.4.3.14 mysql_escape_string()
  • 8.4.3.15 mysql_fetch_field()
  • 8.4.3.16 mysql_fetch_field_direct()
  • 8.4.3.17 mysql_fetch_fields()
  • 8.4.3.18 mysql_fetch_lengths()
  • 8.4.3.19 mysql_fetch_row()
  • 8.4.3.20 mysql_field_count()
  • 8.4.3.21 mysql_field_seek()
  • 8.4.3.22 mysql_field_tell()
  • 8.4.3.23 mysql_free_result()
  • 8.4.3.24 mysql_get_client_info()
  • 8.4.3.25 mysql_get_server_version()
  • 8.4.3.26 mysql_get_host_info()
  • 8.4.3.27 mysql_get_proto_info()
  • 8.4.3.28 mysql_get_server_info()
  • 8.4.3.29 mysql_info()
  • 8.4.3.30 mysql_init()
  • 8.4.3.31 mysql_insert_id()
  • 8.4.3.32 mysql_kill()
  • 8.4.3.33 mysql_list_dbs()
  • 8.4.3.34 mysql_list_fields()
  • 8.4.3.35 mysql_list_processes()
  • 8.4.3.36 mysql_list_tables()
  • 8.4.3.37 mysql_num_fields()
  • 8.4.3.38 mysql_num_rows()
  • 8.4.3.39 mysql_options()
  • 8.4.3.40 mysql_ping()
  • 8.4.3.41 mysql_query()
  • 8.4.3.42 mysql_real_connect()
  • 8.4.3.43 mysql_real_escape_string()
  • 8.4.3.44 mysql_real_query()
  • 8.4.3.45 mysql_reload()
  • 8.4.3.46 mysql_row_seek()
  • 8.4.3.47 mysql_row_tell()
  • 8.4.3.48 mysql_select_db()
  • 8.4.3.49 mysql_shutdown()
  • 8.4.3.50 mysql_stat()
  • 8.4.3.51 mysql_store_result()
  • 8.4.3.52 mysql_thread_id()
  • 8.4.3.53 mysql_use_result()

Get the MySQL Language Reference and MySQL Administrator's Guide from MySQL Press!


Additional languages

  • German


Learn about new MySQL releases, technical articles, events and more.

Subscribe to the monthly MySQL Newsletter!


Previous / Next / Up / Table of Contents

8.4.3.19. mysql_fetch_row()

MYSQL_ROW mysql_fetch_row(MYSQL_RES *result)

Описание

Извлекает следующую строку в результирующем наборе данных. При использовании после функции mysql_store_result() функция mysql_fetch_row() возвращает NULL, если больше не осталось строк для извлечения. При использовании после функции mysql_use_result() функция mysql_fetch_row() возвращает NULL, если больше не осталось строк для извлечения или если произошла ошибка.

Количество величин в данной строке задается в mysql_num_fields(result). Если параметр row содержит возвращенные значения из вызова функции mysql_fetch_row(), то указатели на эти величины имеют значения от row[0] до row[mysql_num_fields(result)-1]. Величины NULL в данной строке отмечаются указателями NULL.

Размеры полей в данной строке можно получить, вызывая функцию mysql_fetch_lengths(). Пустые поля и поля, содержащие NULL, в обоих случаях имеют длину 0; их можно различить, проверив указатель для данной величины поля. Если указатель равен NULL, то данное поле содержит NULL; в противном случае, данное поле является пустым.

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

Структура MYSQL_ROW для следующей строки. NULL, если нет больше строк для извлечения или произошла ошибка.

Ошибки

  • CR_SERVER_LOST

    Соединение с сервером прервалось в процессе данного запроса.

  • CR_UNKNOWN_ERROR

    Произошла неизвестная ошибка.

Пример

MYSQL_ROW row;
unsigned int num_fields;
unsigned int i;

num_fields = mysql_num_fields(result);
while ((row = mysql_fetch_row(result)))
{
  unsigned long *lengths;
  lengths = mysql_fetch_lengths(result);
  for(i = 0; i < num_fields; i++)
  {
    printf("[%.*s] ", (int) lengths[i], row[i] ? row[i] : "NULL");
  }
  printf("\n");
}

This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

Top / Previous / Next / Up / Table of Contents

© 1995-2005 MySQL AB. All rights reserved.

  • About MySQL
  • Careers
  • Site Map
  • Contact Us
  • Legal
  • Privacy Policy
  • Trademark Info
  • No Software Patents!