MYSQL_RES *mysql_store_result(MYSQL *mysql)
Descrição
Você deve chamar mysql_store_result()
ou
mysql_use_result()
para cada consulta que
retorne dados com sucesso (SELECT
,
SHOW
, DESCRIBE
,
EXPLAIN
).
Você não precisa chamar
mysql_store_result()
ou
mysql_use_result()
para outras consultas,
mas ele não causará nenhum dano ou nenhuma queda notel de
desempenho se você chamar
mysql_store_result()
em todos os casos.
Você pode detectar se a consulta não obteve resultado
verificando se mysql_store_result()
retornou 0.
Se você quiser saber se a consulta devia retornar algum
resultado, você pode utilizar
mysql_field_count()
para fazer a
verificação. See Secção 12.1.3.20, “mysql_field_count()
”.
mysql_store_result()
lê todo o resultado
de uma consulta para um cliente, aloca uma estrutura
MYSQL_RES
e coloca o resultado nesta
estrutura.
mysql_store_result()
retorna um ponteiro
para null se a consulta não retornar um resultado (se a
consulta foi, por exemplo, uma instrução
INSERT
).
mysql_store_result()
também retorna um
ponterio para null se a leitura do resultado falhar. Você
pode verficar se você obteve um erro verificando se
mysql_error()
não retornou um ponterio
para null, se mysql_errno()
retorna
<> 0, ou se mysql_field_count()
retorna <> 0.
Um resultado vazio é retornado se não houver registros a retornar. (Um resultado vazio é diferente de um ponteiro para null em um valor de retorno).
Uma vez que você tenha chamado
mysql_store_result()
e tenha retornado um
resultado que não é uma apontador para null, você pode
chamar mysql_num_rows()
para descobrir
quantas linhas existem no resultado.
Você pode chamar mysql_fetch_row()
para
buscar registros no resultado ou
mysql_row_seek()
e
mysql_row_tell()
para obter ou definir a
poição atual do registro dentro do resultado.
Você deve chamar mysql_free_result()
quando tiver terminado com o resultado.
Valor Retornado
Uma estrutura de resultado MYSQL_RES
com o
resultado. NULL
se um erro ocorreu.
Erros
mysql_store_result()
zera
mysql_error
e
mysql_errno
se ela obter sucesso.
CR_COMMANDS_OUT_OF_SYNC
Os comando foram executados em uma ordem inpropriada.
CR_OUT_OF_MEMORY
Sem memoria.
CR_SERVER_GONE_ERROR
O servidor MySQL foi finalizado.
CR_SERVER_LOST
A conexão ao servidor MySQL foi perdida durante a consulta.
CR_UNKNOWN_ERROR
Um erro desconhecido ocorreu.
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.