我正在使用 Pyodbc,并已连接到数据库。我可以轻松地从我只使用 SELECT 和 FROM 语句的地方提取数据。
但是,当我尝试使用 WHERE 语句时,它会抛出语法错误:
这是代码:
import pyodbc
conn = pyodbc.connect('DSN=QueryBuilder')
cursor = conn.cursor()
cursor.execute('SELECT * FROM dbo.Grantinformation WHERE HoldingOrganisationName = 'university of edinburgh'')
我收到这个错误:
SyntaxError: invalid syntax
如果我运行:
SELECT *
FROM dbo.Grantinformation
WHERE HoldingOrganisationName = 'university of edinburgh'
在 SQL Server Management Studio 中,SQL 运行良好,所以显然是我在 pyodbc 上做错了什么?
非常感谢
最佳答案
不,这是一个简单的 Python 语法错误。你的 sql 字符串中有单引号,所以你需要在字符串本身周围使用双引号:
cursor.execute("SELECT * FROM dbo.Grantinformation WHERE HoldingOrganisationName = 'university of edinburgh'")
关于python - Pyodbc - 使用 WHERE 子句运行 SQL 查询(语法错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44646349/