假设我有一个mysql游标和数据读取。数据量可能很大,我想每次处理一行。
一个简单而直接的方法可能是这样的:
while True:
row = cursor.fetchone()
if not row: break
.....
但这看起来不太好,所以我想知道这种方式是否如想象的那样工作:
for row in iter(cursor.fetchall())
我想知道的是:如果我使用iter(cursor.fetchall())
方式,它是先获取所有数据还是一次只获取一行数据?
任何想法都值得赞赏。
泰铢
Tags:
MySQLdb
游标类实现了iterator protocol,因此您可以简单地执行以下操作:来自MySQLdb.cursors.BaseCursor的相关代码:
相关问题 更多 >
编程相关推荐