Python:在字符串周围插入双引号或单引号

标签 python sql quotes

我使用 python 访问 MySQL 数据库,由于引号不在变量两边,我在字段中得到一个未知列。

代码如下:

cur = x.cnx.cursor()
cur.execute('insert into tempPDBcode (PDBcode) values (%s);' % (s)) 
rows = cur.fetchall()

如何在 s 的值周围手动插入双引号或单引号? 我正在尝试使用 str() 并手动连接 s 周围的引号,但它仍然不起作用。 sql 语句工作正常 iv 双重和三次检查我的 sql 查询。

最佳答案

您不应该使用 Python 的字符串函数来构建 SQL 语句。您冒着留下 SQL 注入(inject)漏洞的风险。你应该这样做:

cur.execute('insert into tempPDBcode (PDBcode) values (%s);', s) 

注意逗号。

关于Python:在字符串周围插入双引号或单引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2439027/

相关文章:

apache-pig - pig 的双引号和单引号有什么区别?

shell - 在 shell 中的双引号字符串中转义反引号

windows - 批处理脚本失败 - 无法在没有引号的情况下将文本输出到文件,但是不需要引号

python - 仅显示回溯的第一行和最后一行

python - 如何让 BeautifulSoup 将 textarea 标签的内容解析为 HTML?

python - 如何在 Python 中使用 OpenCV cornerSubPix()?

sql - PostgreSQL 可以对 tsvector 执行语音搜索吗?

python - Firefox 中的 iPython Notebook - 警告 : unresponsive script

mysql - 将数据库导入到 ms sql server

mysql - 可以找到阿拉伯语拼写错误的 SQL 查询