0
我试图解析一个非常大的MySQL表,它可能不适合内存。那我下面的方法是,使用pymysql
:用python光标逐行加载数据
db = PyMySQL.connect(**connection_params)
cur = db.cursor()
cur.execute('SELECT * FROM big_table')
for row in cur:
process(row)
我所观察到的是,cur.execute()
数据急切地加载到内存中。是否有可能迭代行懒洋洋地?
我知道这可以结合LIMIT
和OFFSET
子句来完成,但可以以更透明的方式完成吗?
我知道我可以遍历在'cur.execute()'的结果之上,但问题是它确实加载了数据,这不是我无法承受的一个非常大的表。 – adrpino