Heim >Datenbank >MySQL-Tutorial >Warum verursacht „fetchone()' „Ungelesenes Ergebnis gefunden' im MySQL-Connector von Python und wie können gepufferte Cursor das Problem beheben?
Python MySQL Connector: Ungelesenes Ergebnis bei Verwendung von fetchone gefunden
Diese Frage bezieht sich auf ein Problem, das beim Einfügen von JSON-Daten in eine MySQL-Datenbank mit aufgetreten ist der Python-MySQL-Connector. Beim Einfügen von Details auf höherer Ebene und beim Versuch, Informationen auf niedrigerer Ebene basierend auf Ursprungs- und Zielkoordinaten und Zeitstempel mit dem übergeordneten Element zu verknüpfen, schlug der Code mit der Fehlermeldung „Ungelesenes Ergebnis gefunden“ fehl.
Die für die Suche verwendete Abfrage denn die eindeutige Streckennummer für jeden Satz von Koordinaten und Zeitstempel lautet:
query = ('SELECT leg_no FROM leg_data WHERE travel_mode = %s AND Orig_lat = %s AND Orig_lng = %s AND Dest_lat = %s AND Dest_lng = %s AND time_stamp = %s')
Zunächst wurde versucht, alle ungelesenen Daten zu verwerfen Ergebnisse:
cursor.execute(query,(leg_travel_mode, leg_Orig_lat, leg_Orig_lng, leg_Dest_lat, leg_Dest_lng)) leg_no = cursor.fetchone()[0] try: cursor.fetchall() except mysql.connector.errors.InterfaceError as ie: if ie.msg == 'No result set to fetch from.': pass else: raise cursor.execute(query,(leg_travel_mode, leg_Orig_lat, leg_Orig_lng, leg_Dest_lat, leg_Dest_lng, time_stamp))
Der Fehler blieb jedoch weiterhin bestehen.
Bei weiteren Untersuchungen wurde festgestellt, dass die Lösung in der Angabe eines gepufferten Cursors liegt. Durch Hinzufügen von buffered=True zur Cursor-Initialisierungszeile wurde das Problem behoben:
cursor = cnx.cursor(buffered=True)
Dadurch wird sichergestellt, dass alle Zeilen im Hintergrund abgerufen werden, wodurch verhindert wird, dass der Fehler auftritt.
Das obige ist der detaillierte Inhalt vonWarum verursacht „fetchone()' „Ungelesenes Ergebnis gefunden' im MySQL-Connector von Python und wie können gepufferte Cursor das Problem beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!