Eine Liste sicher in einer MySQL-IN-Klausel in Python verwenden
In Python können Sie eine Liste mithilfe des Joins ganz einfach in einen String konvertieren ()-Methode. Bei der Verwendung dieser Zeichenfolge in einer MySQL-IN-Klausel ist es jedoch wichtig, SQL-Injection-Schwachstellen zu vermeiden.
Der traditionelle Ansatz besteht darin, die Zeichenfolge vor der Ausführung manuell in Anführungszeichen zu setzen und mit Escapezeichen zu versehen, was fehleranfällig sein kann. Um dieses Problem zu lösen, können Sie die leistungsstarke list_of_ids mithilfe der folgenden Technik direkt nutzen:
format_strings = ','.join(['%s'] * len(list_of_ids)) cursor.execute("DELETE FROM foo.bar WHERE baz IN (%s)" % format_strings, tuple(list_of_ids))
Mit diesem Ansatz können Sie eine Liste sicher in einer MySQL IN-Klausel verwenden, ohne sich Gedanken über SQL-Injection machen zu müssen . Die Daten werden direkt als Parameter übergeben, sodass keine manuellen Anführungszeichen und Escapezeichen erforderlich sind.
Das obige ist der detaillierte Inhalt vonWie kann ich eine Liste in einer MySQL-IN-Klausel in Python sicher verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!