使用PyMySQL时如何安全地格式化SQL语句,避免语法错误?

ID:20896 / 打印

使用pymysql时如何安全地格式化sql语句,避免语法错误?

问题的根源:
pymysql没有正确转义%()s,导致sql语句中出现了语法错误。

解决方案:
可以使用pymysql提供的format()方法进行sql语句的格式化,这样可以自动转义变量值:

# 使用format方法进行SQL语句格式化 cursor.executemany('''insert into myfund(fcode,fname,NAV,ACCNAV,updatetime) values(%(fcode)s,%(fname)s,%(NAV)s,%(ACCNAV)s,%(updatetime)s)  on duplicate key update `updatetime`= %(updatetime)s,NAV= %(NAV)s,ACCNAV= %(ACCNAV)s ''', result)
上一篇: Python 读取 HTML 文件,为什么通过 Socket 发送 HTTP 请求后内容不完整?
下一篇: 使用 schedule.run_pending() 后为什么要添加 1 秒延迟,而不是更短的时间?

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。