How do I escape % from python mysql query
How do I escape the % from a mysql query in python.
For example
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))
gives me a "ValueError: unsupported format character 'Y'" exception.
How do I get mysqldb to ignore the %? Can't see this in any of the docs.
Solution 1:
Literal escaping is recommended by the docs:
Note that any literal percent signs in the query string passed to
execute()
must be escaped, i.e.%%
.