我正在使用官方的 MySQL Python 连接器,但本教程中的示例不适用于我正在使用的特定查询。
sql = "SHOW PROCEDURE STATUS WHERE Db = %s"
cursor.execute(sql,('testdb')) # This throws an error, sql syntax error near %s
代码cursor.execute("SHOW PROCEDURE STATUS WHERE Db = 'testdb'")
工作正常
我正在使用官方的 MySQL Python 连接器,但本教程中的示例不适用于我正在使用的特定查询。
sql = "SHOW PROCEDURE STATUS WHERE Db = %s"
cursor.execute(sql,('testdb')) # This throws an error, sql syntax error near %s
代码cursor.execute("SHOW PROCEDURE STATUS WHERE Db = 'testdb'")
工作正常
根据文档,第二个参数execute
应该是字典或元组。1-element 元组必须在元素之后有一个额外的逗号,以免与带括号的表达式混淆:
cursor.execute(sql,('testdb',))
# ^