Datensätze durchlaufen (Postgres)
Verfasst: Mittwoch 26. Januar 2011, 17:32
Hallo zusammen,
ich habe bisher immer auf folgende Weise eine Datenbankabfrage ausgeführt und bin dann die Datensätze durchlaufen:
Plötzlich klappt das ganze aber nicht mehr: Ich bekomme zwar keinen Fehler zurück, aber leider bei "print row" auch keine Ausgabe (bzw. nur einen Teil der Datensätze). Die Variable row hat jedoch eine Länge (über len(row) getestet). Ich habe auch testweise mal die sql-Variable ausgeben lassen und diese Ausgabe dann mal direkt in der Datenbank getestet -> alles ok.
Schreibe ich das ganze so:
Funktioniert es.
Prinzipiell könnte ich ja mit der Lösung leben, aber mein Pythonbuch sagt, dass die erste Lösung für größere Datenmengen besser wäre.
Weiß jemand, woran das liegen könnte?
Vielen Dank für jeden Hinweis!
ich habe bisher immer auf folgende Weise eine Datenbankabfrage ausgeführt und bin dann die Datensätze durchlaufen:
Code: Alles auswählen
sql="SELECT * FROM kunden"
cursor.execute(sql)
row = cursor.fetchone()
for row in cursor:
print row
Schreibe ich das ganze so:
Code: Alles auswählen
while row:
print row
row=cursor.fetchone()
Prinzipiell könnte ich ja mit der Lösung leben, aber mein Pythonbuch sagt, dass die erste Lösung für größere Datenmengen besser wäre.
Weiß jemand, woran das liegen könnte?
Vielen Dank für jeden Hinweis!