MYSQL_ROW mysql_fetch_row(MYSQL_RES
*result)
Descrição
Recuera o próximo registro do resultado. Quando usado depois
de mysql_store_result()
,
mysql_fetch_row()
retorna
NULL
quando não houver mais registros para
retornar. Quando usado depois de
mysql_use_result()
,
mysql_fetch_row()
retorna
NULL
quando não houver mais registros para
retornar ou ocorrer um erro.
O número de valores no registro é dado por
mysql_num_fields(result)
. Se
row
guarda o valor retornado de uma chamada
mysql_fetch_row()
, apontadores para os
valores são acessados como row[0]
a
row[mysql_num_fields(result)-1]
. Valores
NULL
no registro são indicados por
apontadores NULL
.
Os tamanhos dos valores do campo no registro poden ser obtidos
chamando mysql_fetch_lengths()
. Campos
vazios e campos contendo NULL
tem tamanho
0; você pode distingui-los verificando o apontador para o
valor do campo. Se o apontador é NULL
, o
campo é NULL
; senão o campo está vazio.
Valor Retornado
Uma estrutura MYSQL_ROW
para o próximo
registro. NULL
se não houver mais linhas
para retornar ou ocorrer um erro.
Erros
Note que o erro não é zerado entre as chamadas a
mysql_fetch_row()
CR_SERVER_LOST
A conexão com o servidor foi perdida durante a consulta.
CR_UNKNOWN_ERROR
Um erro desconhecido ocorreu.
Exemplo
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.