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

8.4.3.80 mysql_fetch_row()

    8.4.3.80 mysql_fetch_row()

    MYSQL_ROW mysql_fetch_row(MYSQL_RES *result)

    8.4.3.81 Описание

    Извлекает следующую строку в результирующем наборе данных. При использовании после функции 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; в противном случае, данное поле является пустым.

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

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

    8.4.3.83 Ошибки

    CR_SERVER_LOST
    Соединение с сервером прервалось в процессе данного запроса.
    CR_UNKNOWN_ERROR
    Произошла неизвестная ошибка.

    8.4.3.84 Пример

    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");
    }
    



Наш баннер
Вы можете установить наш баннер на своем сайте или блоге, скопировав этот код:
RSS новости