如何有效使用MySQLDB SScursor?
我必须处理一个很大的结果集(可能是数十万行,有时更多)。
不幸的是,它们需要一次全部检索(在启动时)。
我正在尝试通过使用尽可能少的内存来做到这一点。
通过查看SO,我发现使用SSCursor
可能是我想要的,但我仍然不太了解如何正确使用它们。
正在做一个fetchall()
从基光标或SScursor相同的(在内存使用的术语)?
我可以一排(或几排)从sscursor的行中“流化”
吗?如果是,这样做的最佳方法是什么?
回答:
我同意Otto Allmendinger的回答,但是要做出明确的Denis
Otkidach的评论,这是不使用Otto的fetch()函数即可遍历结果的方法:
import MySQLdb.cursorsconnection=MySQLdb.connect(
host="thehost",user="theuser",
passwd="thepassword",db="thedb",
cursorclass = MySQLdb.cursors.SSCursor)
cursor=connection.cursor()
cursor.execute(query)
for row in cursor:
print(row)
以上是 如何有效使用MySQLDB SScursor? 的全部内容, 来源链接: utcz.com/qa/399453.html