dedlfix: auf externe Datenbank zugreifen

Beitrag lesen

echo $begrüßung;

Wenn du nur die Anzahl der Datensätze zählen willst, ist es unsinnig, sie komplett abzufragen. Damit mysql_num_rows() ein Ergebnis liefern kann, muss PHP alle Datensätze vom MySQL-Server abholen.
Bist Du da sicher?

Das PHP-Handbuch zur Funktion mysql_unbuffered_query() sagt so. Weitergeschaut in der MySQL-API liefert mysql_num_rows() einen Verweis auf mysql_store_result(). Dort ist zu entnehmen, dass nicht direkt PHP aber die in PHP eingebundene MySQL-Client-API die Pufferung vornimmt.

Das habe ich neulich erst versucht, herauszufinden, wo das Resultset des buffered Query gespeichert wird. MMn wird es im Verantwortungsbereich des MySQL-Server gespeichert,

Nein, beim Client von der MySQL-Client-API.

Erst mit einer (PHP-) mysql_fetch_*-Funktion werden die Daten dann in den Speicherbereich, der zum Script gehört, abgeholt. Das kann durchaus wichtig sein bei großen Resultsets. Wenn man nämlich nur 8MB Scriptspeicher hat und muss so ein großes Resultset (oder mehrere) verarbeiten, kann man es auch "stückchenweise" abholen und den Puffer in PHP immer wiederverwenden. natürlich nur, wenn es programmtechnisch sinnvoll ist...

Wenn du Leute anforderst, sie draußen im Gang warten lässt, quillt natürlich dein Büro nicht über. Aber der Gang muss erstmal gefüllt werden und verstopft dann eben diesen. Außerdem muss dein Praktikant, den du zum Zählen rausschickst erst warten, bis alle da sind, und sie dann noch durchzählen. Wenn du sie nicht explizit eliminieren lässt, warten sie auch noch noch auf dem Gang bis zu deinem Feierabend, und werden nun vom Reinigungspersonal beseitigt.

echo "$verabschiedung $name";