如何从 Python 中转义 MySQL 查询中的'%”字符?

Mary-Kate Olsen
发布: 2024-11-16 03:28:03
原创
850 人浏览过

How to Escape the '%' Character in MySQL Queries from Python?

从 Python 中转义 MySQL 查询中的 %

使用 Python 的 MySQLdb 库时,在执行时遇到“ValueError: 不支持的格式字符”异常带有“%”字符的查询可能会令人沮丧。这是因为 MySQL 将“%”字符视为通配符,并将其解释为查询的一部分而不是文字。

要解决此问题,文档建议转义文字中的“%”符号查询字符串传递给execute()。通过使用双% (%%),MySQL 会将“%”识别为文字字符而不是通配符。

例如,原始问题中的查询可以修改如下:

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))
登录后复制

通过转义“%”符号,MySQL 现在会将“Y”和“m”识别为 DATE_FORMAT 字符串中的特定字符,从而避免错误。

以上是如何从 Python 中转义 MySQL 查询中的'%”字符?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板