Psycopg2 DictCursor什么都不返回

问题描述 投票:1回答:1

我的查询是:

query = '''
    SELECT * from table
    where id IN (SELECT ext_id from table2
            where title= %s and year = %s)
'''

接下来我用

cursor = conn.cursor(cursor_factory=pg.extras.DictCursor)
cursor.execute(query, (title, year))
result = cursor.fetchall()

它返回[],即没有

但是,如果我设置cursor = conn.cursor(),相同的查询将返回一些行!出了什么问题?为什么我不能使用DictCursor?

postgresql cursor psycopg2
1个回答
0
投票

在我的代码中不要使用pg.extras.DictCursor。

相反,我使用psycopg2.extras.DictCursor

我写了以下内容:

import psycopg2
import psycopg2.extras

cursor = conn.cursor(cursor_factory=psycopg2.extras.DictCursor)

然后我就可以使用密钥访问内容了。

试一试,让我知道。

© www.soinside.com 2019 - 2024. All rights reserved.