User since
2004-06-17
305
Artikel
BenutzerIn
Hi,
auf die Frage von kale_1990 mal nachgehakt.
Es gibt ja zig Möglichkeiten die Daten aus der DB auszulesen. Die DBI-Doku beschreibt sie ja alle recht schön. Nur leider steht nicht dabei *wann* man *welche* Methode anwenden sollte. Ich verwende ja fast ausschließlich $sth->fetch
Gibt es eigentlich eine Faustformel die besagt wan man welche Methode für welche Zwecke verwenden sollte? Z.B. auch in Verbindung mit bind_columns ...
User since
2005-01-13
782
Artikel
BenutzerIn
naja ich mein, es kommt halt drauf an wie du was mit den Daten machen willst.
wenn du sie zeilenweise ausliest aber dann in einen hash speicherst kannst natürlich auch gleich das
fetchall_hashref nehmen
User since
2003-08-04
14371
Artikel
ModeratorIn
Es kommt auch auf die Menge an... Das Zeilenweise auslesen hat den Vorteil, dass Du nicht alle Daten im Speicher halten musst! Wenn Du aber nur ein
fetchrow_array machst um dann ein
push in ein weiteres Array zu machen, solltest Du die
fetchall_*-Methoden verwenden.
Mit hashrefs solltest Du nehmen, wenn Du Positionen der Spalten nicht kennst und mit Namen zugreifen willst!
User since
2005-08-17
1420
Artikel
BenutzerIn
Daneben kann man sich manchmal bisschen drumrum sparen, wenn man die selectxxx-Funktionen nutzt. Die sind praktisch, wenn man einen SELECT nur einmal aufrufen will/muss. Brauchst du den gleichen SELECT mehrmals, dann ist die Variante mit prepare, execute und fetch die bessere.