Python SQL条目不会撤消搜索结果

时间:2016-05-11 14:28:25

标签: python mysql sql

我在将混合字符串插入sql db时遇到了问题。 我想urlencoding字符串是一种更简单的方法来保存表中的字符串。

IE

INSERT INTO metadb (name, type , year ) values ( 'Valentine%27s Day', 'movie', '2010')

我的问题是当我尝试使用sql查找此条目时,它什么也没有返回。

SELECT * FROM metadb WHERE name = 'Valentine%27s Day' and year = '2010' and type = 'movie'

有没有办法克服这个问题?我最好的猜测是它与“'%'这搞砸了。

使用Python SQL平台。

2 个答案:

答案 0 :(得分:1)

您需要使用\字符来转义谓词,如下所示:

SELECT * FROM metadb WHERE name = 'Valentine\%27s Day' and year = '2010' and type = 'movie'

你的猜测是正确的。 %special character in MySQL。另外,在将记录插入表格之前,我可能会考虑使用url解码/编码库。

答案 1 :(得分:1)

你不可能把它分开吗?例如,你可以这样做:

textwidth

然后选择你必须从文档中转义字符串:

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

https://dev.mysql.com/doc/connector-python/en/connector-python-api-mysqlcursor-execute.html

我希望它可以帮到你。

//丹尼尔