我正在使用Python 2.7和pyodbc与Postgresql数据库交谈。当我使用预准备语句时,execute语句冻结并且不返回。如果我使用直接sql然后它工作正常。有任何想法吗?
以下是我在代码中的内容:
DBconn = pyodbc.connect("DSN=devDB;UID=dev;PWD=dev", autocommit=True)
cursor = DBconn.cursor()
sql = """ select distinct age from user where name = (?) """
params = ('john',)
cursor.execute(sql, params)
#works fine
#sql = """ select distinct age from user where name = 'john' """
#cursor.execute(sql)
row = cursor.fetchone()
print(row)
cursor.close()
DBconn.close()
PS:此查询应该只返回一行,并且数据确实很小。