如何从 python mysql 查询中转义 %

2021-11-20 00:00:00 python mysql

如何从 python 中的 mysql 查询中转义 %.

How do I escape the % from a mysql query in python.

例如

query = """SELECT DATE_FORMAT(date_time,'%Y-%m') AS dd
FROM some_table
WHERE some_col = %s
AND other_col = %s;"""

cur.execute(query, (pram1, pram2))

给我一​​个ValueError: unsupported format character 'Y'"异常.

gives me a "ValueError: unsupported format character 'Y'" exception.

如何让 mysqldb 忽略 %?在任何文档中都看不到这一点.

How do I get mysqldb to ignore the %? Can't see this in any of the docs.

推荐答案

文档:

请注意,传递给 execute() 的查询字符串中的任何文字百分号都必须进行转义,即 %%.

Note that any literal percent signs in the query string passed to execute() must be escaped, i.e. %%.

相关文章