Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Verwenden Sie eine parametrisierte Abfrage mit mysql.connector in Python 2.7

Der Fehler, den Sie erhalten, stammt von mysql, wenn es versucht, die Abfrage auszuführen. Die an cursor.execute() übergebenen Abfrageparameter ein Tupel sein muss, übergeben Sie einen einzelnen Wert. Um ein Tupel mit einem einzelnen Element zu erstellen, müssen Sie nach dem Element ein Komma hinzufügen:

cursor.execute("SELECT * FROM automatedReports WHERE pythonFunctionName = %s", (function_name,))

Andernfalls mysql.connector maskiert nichts und lässt das Literal %s in der Abfrage.