ChrisB: DBI fetchrow_array

Beitrag lesen

Hi,

Beim erstem Mal klappt das fetchrow_array()(wie erwartet) und beim zweiten mal nicht (wie erwartet).

Der Zeiger auf den aktuellen Datensatz des Resultsets steht nach dem Abholen des letzten Datensatzes "hinter" diesem. Wenn du alle Datensätze noch mal abholen willst, musst du diesen erst zurücksetzen. (K.A., wie man das bei Perl bzw. dem von dir ggf. eingesetzten Modul macht - also in der Doku nachlesen gehen.)

Gibt es dafür ein elegante Lösung?

Die DB-Schnittstelle mit mehrfachem Durchlaufen eines Ergebnissets zu belasten, ist meistens unnötig - hole dir die Daten einmal, lege sie in einer Datenstruktur wie einem Array ab - dann kannst du dieses im Script so oft durchlaufen, wie du möchtest.

MfG ChrisB

--
Light travels faster than sound - that's why most people appear bright until you hear them speak.