猿问

Python mysql字符串替换不起作用

我一直在python mysql中成功使用此语法。


search = "O'%"   # find names like O'Brien or O'Connell...


cursor.execute ("""

   select userid

      from usertab

    where name like %s

""" , (search))

但是有时候我需要像下面这样执行之前先构建我的sql字符串,但是替换技术与上面的有所不同,并且并非在所有情况下都有效。



在不执行游标的情况下,如何实现在第一个示例中正常工作的相同类型的字符串替换?


拉莫斯之舞
浏览 218回答 1
1回答

蛊毒传说

MySQLdb 使用连接的literal()方法对参数进行转义,因此可以使用:sql = """   select userid      from usertab    where name like %s""" % cursor.connection.literal(search)
随时随地看视频慕课网APP

相关分类

Python
我要回答