PHP mysql_unbuffered_query() funktion
definering og brug
mysql_unbuffered_query() funktionen sender en SQL-søgning til MySQL (uden at hente / gemme resultaterne).
syntaks
mysql_unbuffered_query(query,forbindelse)
parametre | beskrivelse |
---|---|
query | påkrævet. Angiv den SQL-søgning, der skal sendes. Bemærk: Søgestrengen må ikke afsluttes med et semikolon. |
forbindelse | valgfri. Angiv SQL-forbindelsesidentifikator. Hvis det ikke angives, bruges den sidst åbnede forbindelse. |
forklaring
mysql_unbuffered_query() sender en SQL-søgning query til MySQL, men ikke som mysql_query() for at automatisk hente og cache resultatsæt. På den ene side kan dette spare betydelig hukommelse, når der håndteres store resultatsæt. På den anden side kan resultatsættet opereres øjeblikkeligt efter det første række er modtaget, uden at vente på, at hele SQL-sætningen er fuldført.
Når der bruges flere databaseforbindelser, skal valgfri parametre specificeres forbindelse。
Vedvisninger og kommentarer
Bemærk:Fordelene ved mysql_unbuffered_query() har en pris: Det er ikke muligt at bruge mysql_num_rows() og mysql_data_seek()。Derudover skal alle ikke-hydrerede SQL-forespørgsler genererede resultatligninger udtrækkes, før en ny SQL-forespørgsel sendes til MySQL.
Eksempel
<?php $con = mysql_connect("localhost","mysql_user","mysql_pwd"); if (!$con) { die('Kunne ikke forbinde: ' . mysql_error()); } // Store forespørgsler $sql = "SELECT * FROM Person"; mysql_unbuffered_query($sql,$con); // Begynde behandling af data... mysql_close($con); ?>