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.18 mysql_fetch_lengths()

  • 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.18. mysql_fetch_lengths()

unsigned long *mysql_fetch_lengths(MYSQL_RES *result)

Описание

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

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

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

Массив беззнаковых целых чисел, представляющий собой размер каждого столбца (не включая конечные нулевые символы). NULL если произошла ошибка.

Ошибки

Функция mysql_fetch_lengths() действительна только для данной текущей строки в результирующем наборе данных. Она возвращает NULL, если ее вызов происходит до вызова функции mysql_fetch_row() или после извлечения всех строк в результате.

Пример

MYSQL_ROW row;
unsigned long *lengths;
unsigned int num_fields;
unsigned int i;

row = mysql_fetch_row(result);
if (row)
{
  num_fields = mysql_num_fields(result);
  lengths = mysql_fetch_lengths(result);
  for(i = 0; i < num_fields; i++)
  {
    printf("Column %u is %lu bytes in length.\n", i, lengths[i]);
  }
}

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!