python - 使用 Psycopg2 获得懒惰但可重复使用的游标

标签 python postgresql psycopg2 pygresql

我在 the docs 中看到您需要使用服务器端(“命名”)游标来避免一次将所有结果加载到内存中。但后来我发现服务器端游标不可重用。您只能对它们执行单个 .execute。 (否则你会得到 ProgrammingError: can't call .execute() on named cursors more than once。)

有什么方法可以得到一个我可以重复使用的游标,但它也不会一次将所有数据加载到内存中?

我愿意使用不同的 Postgres 驱动程序,如果它能让事情变得更简单和更高效的话。我查看了 PyGreSQL,但它似乎明显比 Postgres 命名游标慢。

最佳答案

只是不要重复使用游标。重用连接。

关于python - 使用 Psycopg2 获得懒惰但可重复使用的游标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42849167/

相关文章:

Python检查列表项是否为整数?

python - Python 中的魔术方法(dunders)与 C++ 中的运算符重载相同吗?

python - 检查数据库中新条目的最快和最有效的方法是什么?

node.js - 如何在postgres中更新和插入数据

python - 使用 Python 将 PostgreSQL 查询导出到 csv 文件

django - get_or_create 对于小数的 unique_together 失败

python - 如何交换不包含相同数量项目的两个元组的值?

java - jOOQ 是否支持 PostgreSQL 数组函数和运算符?

ruby - PostgreSQL 数据库中的货币转换和聚合

python - 捕获 psycopg2 中的任何错误而不明确列出它们