我的问题很简单,在 Python 中,如何格式化包含单引号的 SQL 语句?

我有地名

"Musee d'Orsay"

我想要的是
"Musee d\'Orsay"

所以,我尝试使用以下语句替换单引号
str.replace("'","\'")

但是,它返回原始字符串。你能给我任何帮助吗?

双斜线效果很好。
str.replace("'","\\'")

好的,谢谢大家的回复。我已经想通了。

我必须通过加倍单引号来逃避它。



这个对我有用。

最佳答案

您不应该通过准备将进入其中的字符串来创建 sql 查询:您应该使用占位符并让库为您完成转义工作。

确切的语法可能会因您使用的数据库而异。例如,在 sqlite 中:

m = "Musée d'Orsay"
cursor.execute('SELECT * FROM table WHERE museum=?', m)

关于python - 在 SQL 语句中格式化单引号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12910758/

10-12 18:13