Python Pyodbc-使用WHERE子句运行SQL查询(语法错误)

Python Pyodbc-使用WHERE子句运行SQL查询(语法错误),python,sql,pyodbc,Python,Sql,Pyodbc,我正在使用Pyodbc,并连接到一个数据库。只要使用SELECT和FROM语句,我就可以轻松地提取数据 但是,当我尝试使用WHERE语句时,它会抛出语法错误: 代码如下: import pyodbc conn = pyodbc.connect('DSN=QueryBuilder') cursor = conn.cursor() cursor.execute('SELECT * FROM dbo.Grantinformation WHERE HoldingOrganisationName = '

我正在使用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:无效语法

如果我跑步:

SELECT * 
FROM dbo.Grantinformation
WHERE HoldingOrganisationName = 'university of edinburgh'
在SQLServerManagementStudio中,SQL运行良好,所以很明显我用pyodbc做了一些错事


非常感谢

不,这是一个简单的Python语法错误。sql字符串中有单引号,因此需要在字符串本身周围使用双引号:

cursor.execute("SELECT * FROM dbo.Grantinformation WHERE HoldingOrganisationName = 'university of edinburgh'")

不,这是一个简单的Python语法错误。sql字符串中有单引号,因此需要在字符串本身周围使用双引号:

cursor.execute("SELECT * FROM dbo.Grantinformation WHERE HoldingOrganisationName = 'university of edinburgh'")

哎呀!谢谢你,丹尼尔!哎呀!谢谢你,丹尼尔!