my_bool mysql_bind_result(MYSQL_STMT *stmt,
MYSQL_BIND *bind)
Descrição
mysql_bind_result()
é usado para associar
(ligar) colunas no resultados ao buffer de dados e buffer de
tamanho. Quando mysql_fetch()
é chamado
para buscar dados, o protocolo cliente/servidor MySQL os
coloca os dados para as colunas limite no buffer especificado.
Note que todas as colunas devem ser limitadas por buffers
antes da chamada de mysql_fetch()
.
bind
é o endereço de um vetor de
estruturas MYSQL_BIND
. A biblioteca cliente
espera que o vetor contenha um elemento para cada coluna no
resultado. Senão mysql_fetch()
simplesmente ignorado os dados trazidos; os buffers devem se
suficientemente grande para guardar os dados, porque o
protocolo não retorna dados em blocos.
Uma coluna pode ser limitada a qualquer hora, mesmo depois do
resultado ter sido parcialmente recuperado. A nova ligação
tem efeito ba próxima vez em que
mysql_fetch()
é chamado. Suponha que uma
aplicação liga a coluna em um resultado e chama
mysql_fetch()
. O protocolo cliente/servidor
retorna dados em buffers limitados. Agora suponha que a
aplicação ligue a coluna a um diferente cojunto de buffers,
então o protocolo não coloca os dados em um novo buffer
limitado até que a próxima chamada
mysql_fetch()
ocorra.
Para ligar uma coluna, uma aplicação chama
mysql_bind_result()
e passa o tipo, o
endereço e o endereço do buffer do tamanho. Os membros de
cada elemento MYSQL_BIND
que deve ser
configurado estão descritos em
Secção 12.1.5, “Tipos de Dados de Instruções Preparadas da API C”.
Valor Retornado
Zero se a ligação obteve sucesso. Diferente de zero se ocorreu um erro.
Erros
CR_NO_PREPARE_STMT
Não existe instruções preparadas
CR_UNSUPPORTED_PARAM_TYPE
A conversão não é suportada. Possivelmente o
buffer_type
é inválido ou não na
lista dos tipos de buffers suportados
CR_OUT_OF_MEMORY
Falta de memória
CR_UNKNOWN_ERROR
Ocorreu um erro desconhecido
Exemplo
Para utilizar mysql_bind_result()
consulta
o exemplo de Secção 12.1.7.13, “mysql_fetch()
”
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.