Heim > Datenbank > MySQL-Tutorial > Warum werden meine Python-MySQL-Datenbankaktualisierungen nicht angezeigt?

Warum werden meine Python-MySQL-Datenbankaktualisierungen nicht angezeigt?

Barbara Streisand
Freigeben: 2024-12-04 15:25:15
Original
598 Leute haben es durchsucht

Why Aren't My Python MySQL Database Updates Reflecting?

Problem: Automatische Datenbankaktualisierungen treten bei MySQL und Python nicht auf

Beim Versuch, eine Zeile in einer MySQL-Datenbank über Python-Code zu aktualisieren, wird die Die Datenbank spiegelt die Änderungen nicht automatisch wider. Bei einer direkten Abfrage der Datenbank wird deutlich, dass die Aktualisierung nicht stattgefunden hat.

Mögliche Lösung

Das Problem kann darauf zurückzuführen sein, dass die Transaktion nicht ordnungsgemäß ausgeführt wurde. MySQLdb deaktiviert Autocommit standardmäßig. Das Hinzufügen von conn.commit() vor dem Schließen der Verbindung würde sicherstellen, dass die Änderungen dauerhaft in der Datenbank gespeichert werden.

Geänderter Code

import MySQLdb

conn=MySQLdb.connect(host="localhost", user="root", passwd="pass", db="dbname")
cursor=conn.cursor()

cursor.execute("UPDATE compinfo SET Co_num=4 WHERE ID=100")
conn.commit()  # Commit the changes to the database
cursor.execute("SELECT Co_num FROM compinfo WHERE ID=100")
results = cursor.fetchall()

for row in results:
    print row[0]

print "Number of rows updated: %d" % cursor.rowcount

cursor.close()
conn.close()
Nach dem Login kopieren

Durch vorheriges Festschreiben der Transaktion Wenn Sie die Verbindung schließen, sollte der Code die Datenbank erfolgreich aktualisieren und die Änderungen bei der direkten Abfrage widerspiegeln.

Das obige ist der detaillierte Inhalt vonWarum werden meine Python-MySQL-Datenbankaktualisierungen nicht angezeigt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage