Heim >Datenbank >MySQL-Tutorial >Wie behebe ich den MySQL Connector-Fehler „Ungelesenes Ergebnis gefunden' in Python?
Beim Arbeiten mit MySQL-Datenbanken über den Python-Connector kann es vorkommen, dass ein Fehler mit der Meldung „Ungelesenes Ergebnis gefunden“ auftritt ." Dieses Problem ist normalerweise mit ungepufferten Cursorn verbunden und kann auftreten, wenn mehrere Abfragen in einer einzelnen Verbindung ausgeführt werden.
Im bereitgestellten Code tritt der Fehler wahrscheinlich aufgrund der Zeile auf:
leg_no = cursor.fetchone()[0]
Diese Zeile ruft nur eine einzelne Zeile aus dem Abfrageergebnis ab und lässt die übrigen Ergebnisse unbearbeitet. Nachfolgende Abfragen mit demselben Cursor schlagen dann mit dem Fehler „Ungelesenes Ergebnis gefunden“ fehl.
Lösung:
Um dieses Problem zu beheben, legen Sie das gepufferte Attribut des Cursors fest beim Erstellen auf „True“ setzen. Dadurch wird der Connector gezwungen, den gesamten Ergebnissatz zu puffern, bevor irgendwelche Abfragen ausgeführt werden.
cursor = cnx.cursor(buffered=True)
Darüber hinaus wird empfohlen, alle verbleibenden Ergebnisse explizit mit fetchall() vom Cursor abzurufen, bevor nachfolgende Abfragen ausgeführt werden. Dies kann mit dem folgenden Code erfolgen:
try: cursor.fetchall() except mysql.connector.errors.InterfaceError as ie: if ie.msg == 'No result set to fetch from.': pass else: raise
Indem Sie den Cursor auf „gepuffert“ setzen und alle Ergebnisse explizit abrufen, kann der Fehler „Ungelesenes Ergebnis gefunden“ vermieden werden.
Das obige ist der detaillierte Inhalt vonWie behebe ich den MySQL Connector-Fehler „Ungelesenes Ergebnis gefunden' in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!