Variablen in SQL-Anweisungen in Python verwenden
Dieser Artikel bietet eine Lösung für das häufige Problem der Verwendung von Variablen in SQL-Anweisungen in Python. Der folgende Python-Code:
cursor.execute("INSERT INTO table VALUES var1, var2, var3")
schlägt mit einem Fehler fehl, da die Variablennamen als Teil des Abfragetexts enthalten sind. Um dieses Problem zu beheben, verwenden Sie die folgende Syntax:
cursor.execute("INSERT INTO table VALUES (%s, %s, %s)", (var1, var2, var3))
In dieser Lösung werden die Variablennamen in der SQL-Anweisung durch Platzhalter (%s) ersetzt. Die Parameter werden dann als Tupel übergeben (var1, var2, var3). Beachten Sie, dass das Tupel mit einem Komma enden muss, wenn Sie einen einzelnen Parameter übergeben.
Durch die Verwendung dieser Methode wird sichergestellt, dass die Datenbank-API korrekte Escape- und Anführungszeichen von Variablen verarbeitet. Es ist wichtig, die Verwendung des String-Formatierungsoperators % zu vermeiden, da dieser weder Escapezeichen noch Anführungszeichen ausführt. Dies kann zu Sicherheitslücken wie SQL-Injection führen.
Das obige ist der detaillierte Inhalt vonWie kann ich Variablen in SQL-Anweisungen in Python sicher verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!