Robert R.: MySQL 5.5.34 aus dem XAMPP-Paket

Liebe Wissende,

ich habe ein Problem mit MySQL und der Abfrage der SQL_CALC_FOUND_ROWS.

Ich führe eine limitierte Abfrage mit php durch

mysqli_query($con, $sql);

resultset abholen

mysqli_query($con, 'select found_rows() as rows);

Resultset (also hier nur rows) abholen.

Leider ist das unzuverlässig.
Wenn ich das Resultset des Hauptqueries erst hinterher auslese, sind die Angaben immer richtig.
Das ist aber für den Programmablauf unpraktisch.

Ist das nun ein Bug oder darf man das Resultset des Hauptqueries nicht vor den found_rows() abholen?

Grüße

Robert

  1. Liebe Wissende,

    es ist schon spät...
    Sitze jetzt gleich 22 Stunden vor der Kiste, weil es bisher so gut lief.

    Also: Fehler gefunden.

    Ich hole die Daten nach dem Query aus dem Resultset ab und reiche die dann auch gleich weiter an die Ausgabeeinheit. Die muss aber, um unterschiedliche Rechte der User berücksichtigen zu können, selber auch eine Abfrage anfordern.

    Die Ausgabe der kalkulierten Zeilen kommt dann erst beim nächsten Schritt.

    Wenn man da erst die found_rows() abfragt dann beziehen die sich natürlich auf die Rechteanfrage, die zwischendurch auch noch lief.

    Also musste ich die Datenstruktur doch nochmal umbauen, damit ich die Metadaten der Daten-Abfrage da gleich mit reinpacken konnte...

    Jetzt läuft es und ich gehe ins Bett *freu*

    Gute "Nacht"

    Robert