О курсоре и итераторе mysql

Представьте, что у меня есть курсор mysql и читаются данные. Объем данных может быть очень большим, поэтому я хочу иметь дело с одной строкой каждый раз.

Простой и прямой способ может выглядеть так:

while True:
    row = cursor.fetchone()
    if not row: break
    .....

но это выглядит не очень хорошо, поэтому мне интересно, может ли этот путь работает, как предполагалось:

for row in iter(cursor.fetchall())

я хочу знать следующее: если я использую способ iter (cursor.fetchall ()) , он сначала извлекает все данные или только одну строку за раз?

Любая идея приветствуется.

thx

23
задан guettli 16 December 2013 в 16:36
поделиться