Pyodbc查询字符串引用转义

时间:2013-06-17 02:00:41

标签: python string escaping pyodbc

我正在尝试使用这种代码的pyodbc执行查询

cursor.execute("SELECT x from y where Name='%s'"%namepar)

参数可能有引号,因此需要进行转义以便工作,我该怎么做?我尝试在namepar中简单地用“\\”替换“'”并且它仍然不起作用,我得到一个pyodbc.ProgrammingError

1 个答案:

答案 0 :(得分:5)

您可以传递参数,然后进行转义。

cursor.execute("SELECT x from y where Name = ?", (namepar,))

http://www.python.org/dev/peps/pep-0249/#id15

http://code.google.com/p/pyodbc/wiki/Cursor