mysql_unbuffered_query
(PHP 4 >= 4.0.6, PHP 5)
mysql_unbuffered_query — Envia uma consulta SQL ao MySQL sem buscar e armazenar em buffer as linhas de resultados
Esta extensão tornou-se defasada a partir do PHP 5.5.0 e foi removida no PHP 7.0.0. Em vez disso, as extensões MySQLi ou PDO_MySQL devem ser usadas. Veja também o guia MySQL: escolhendo uma API. Alternativas a esta função incluem:
- Consulte: Consultas com e sem buffer
Descrição
mysql_unbuffered_query() envia a consulta SQL
query
para o MySQL sem buscar e armazenar
automaticamente as linhas de resultados como
mysql_query() faz. Isso economiza uma quantidade
considerável de memória com consultas SQL que produzem grandes conjuntos de resultados,
e o conjunto de resultados já pode ser processado imediatamente após a
primeira linha ter sido recuperada, pois não será necessário esperar até
que a consulta SQL completa seja executada. Para usar
mysql_unbuffered_query() enquanto múltiplas conexões
de banco de dados estão abertas, o parâmetro opcional
link_identifier
deve ser especificado para identificar
qual conexão deve ser usada.
Parâmetros
query
-
A consulta SQL a ser executada.
Dados dentro da consulta devem ser adequadamente escapados.
-
link_identifier
A conexão MySQL. Se o identificador da conexão não for especificado, a última conexão aberta por mysql_connect() será usada. Se não houver uma conexão anterior, haverá uma tentativa de criar uma como se mysql_connect() tivesse sido chamada sem argumentos. Se nenhuma conexão for encontrada ou estabelecida, um erro de nível
E_WARNING
será gerado.
Valor Retornado
Para instruções SELECT, SHOW, DESCRIBE ou EXPLAIN,
mysql_unbuffered_query()
retorna um resource em caso de sucesso, ou false
em
caso de erro.
Para outros tipos de instruções SQL, UPDATE, DELETE, DROP, etc.,
mysql_unbuffered_query() retorna true
em caso de sucesso
ou false
em caso de erro.
Notas
Note:
Os benefícios de mysql_unbuffered_query() têm um custo: mysql_num_rows() e mysql_data_seek() não podem ser usadas em um conjunto de resultados retornado de mysql_unbuffered_query() , até que todas as linhas sejam buscadas. Também é necessário buscar todas as linhas de resultados de uma consulta SQL sem buffer antes de enviar uma nova consulta SQL ao MySQL, usando o mesmo
link_identifier
.