Spec-Zone.ru › MySQL Connectors 1.0

5.4.20 mysql_fetch_lengths()

unsigned long *
mysql_fetch_lengths(MYSQL_RES *result)

Описание

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

Длина для пустых столбцов и для столбцов, содержащих 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]);
    }
}

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/c-api-5.7-en/mysql-fetch-lengths.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API