Fehler in Python-MySQL-Update-Anweisungen korrigieren
Beim Aktualisieren von Daten in einer MySQL-Datenbank mit Python ist es wichtig, die korrekte Syntax für sicherzustellen UPDATE-Anweisung. Betrachten Sie die folgende Anweisung mit Variablen:
cursor.execute ("UPDATE tblTableName SET Year=%s" % Year ", Month=%s" % Month ", Day=%s" % Day ", Hour=%s" % Hour ", Minute=%s" Minute "WHERE Server=%s " % ServerID)
Diese Anweisung enthält mehrere Fehler, die zu falschen Aktualisierungen führen können. Hier ist der richtige Ansatz:
cursor.execute (""" UPDATE tblTableName SET Year=%s, Month=%s, Day=%s, Hour=%s, Minute=%s WHERE Server=%s """, (Year, Month, Day, Hour, Minute, ServerID))
In dieser überarbeiteten Anweisung:
Alternativ können Sie eine einfache Zeichenfolgenmanipulation für den Aktualisierungsbefehl verwenden als folgt:
cursor.execute ("UPDATE tblTableName SET Year=%s, Month=%s, Day=%s, Hour=%s, Minute=%s WHERE Server='%s' " % (Year, Month, Day, Hour, Minute, ServerID))
Von dieser Methode wird jedoch abgeraten, da sie den Code anfällig für SQL-Injection macht Angriffe.
Um potenzielle Probleme mit String-Ersetzungskonventionen über verschiedene Datenbank-Backends hinweg zu beseitigen, ist es ratsam, den ersten Ansatz zu verwenden.
Das obige ist der detaillierte Inhalt vonWie korrigiere ich Fehler in Python-MySQL-Update-Anweisungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!