(PHP 4 >= 4.0.6, PHP 5)
mysql_unbuffered_query — Envía una consulta SQL a MySQL, sin recuperar ni almacenar en búfer las filas de resultados
Esta extensión fue declarada obsoleta en PHP 5.5.0 y eliminada en PHP 7.0.0. En su lugar debería utilzarse las extensiones MySQLi o PDO_MySQL. Véase también la guía MySQL: elegir una API y sus P+F relacionadas para más información. Alternatives to this function include:
$query
[, resource $link_identifier
= NULL
] ) : resource
mysql_unbuffered_query() envía la consulta SQL
query
a MySQL, sin recuperar ni almacenar automáticamente
en búfer las filas de resultados, como
mysql_query() lo hace. Esto ahorra una considerable
cantidad de memoria con las consultas SQL que producen conjuntos de resultados grandes,
y se puede empezar a trabajar con el conjunto de resultados inmediatamente después de
que la primera fila haya sido recuperada, ya que no es necesario esperar hasta que la
consulta SQL completa haya sido ejecutada. Para usar
mysql_unbuffered_query() mientras están abiertas
múltiples conexiones a la base de datos, se debe especificar el parámetro opcional
link_identifier
para identificar qué conexión
se desea utilizar.
query
La consulta SQL a ejecutar.
Los datos dentro de la consulta deben estar propiamente escapados.
link_identifier
La conexión MySQL. Si no
se especifica el identificador de enlace, se asume el último enlace abierto
por mysql_connect(). Si no se encuentra este enlace, se
intentará crear un nuevo enlace como si mysql_connect() hubiese sido invocada
sin argumentos. Si no se encuentra o establece ninguna conexión, se genera un error
de nivel E_WARNING
.
Para sentencias SELECT, SHOW, DESCRIBE o EXPLAIN,
mysql_unbuffered_query()
devuelve un resource en caso de éxito, o FALSE
en caso
de error.
Para otro tipo de sentencias SQL, UPDATE, DELETE, DROP, etc,
mysql_unbuffered_query() devuelve TRUE
en caso de éxito
o FALSE
en caso de error.
Nota:
Los beneficios de mysql_unbuffered_query() tienen un precio: no se puede usar mysql_num_rows() ni mysql_data_seek() en un conjunto de resultados devuelto por mysql_unbuffered_query(), hasta que todas las filas sean recuperadas. También se tendrán que recuperar todas las filas de resultados de una consulta SQL no almacenada en búfer antes de poder enviar una nueva consulta SQL a MySQL, usando el mismo
link_identifier
.