use*_*746 25 python mysql mysql-python
我正在尝试执行查询以使用MySQL通过Python搜索数据库中的3个表.每次我尝试执行以下字符串作为查询时,它会给我一个关于字符串中连接的错误.
"SELECT fileid FROM files WHERE description LIKE '%" + search + "%' OR filename LIKE '%" + search + "%' OR uploader LIKE '%" + search + "%' ORDER BY fileid DESC"
Run Code Online (Sandbox Code Playgroud)
这是它给我的错误:
ValueError: unsupported format character ''' (0x27) at index 1
Run Code Online (Sandbox Code Playgroud)
如果我删除它要求的字符,那么我还必须删除%,这会阻止查询实际正常工作.我能做些什么来解决这个问题,因为我对Python很陌生.
谢谢,克里斯
Poc*_*chi 64
看起来python将%解释为类似printf的格式字符.尝试使用%%?
"SELECT fileid
FROM files
WHERE description LIKE '%%%s%%'
OR filename LIKE '%%%s%%'
OR uploader LIKE '%%%s%%'
ORDER BY fileid DESC" % (search, search, search)
Run Code Online (Sandbox Code Playgroud)