разница между циклом курсора и циклом cursor.fetchall в запросах строк - PullRequest
4 голосов
/ 03 декабря 2010

Допустим, у меня есть следующий код

cursor = connection.cursor()
cursor.execute(query)

после этой точки я хочу перебрать весь набор результатов.

в чем разница между

for row in cursor:
    print row[0]


for row in cursor.fetchall():
   print row[0]

I

Я предполагаю, что первый использует метод fetchone.

1) Сначала выполняется запрос на каждой итерации. 2) он использует метод fetchone или метод fetchall 3) что лучше для большого набора результатов?

1 Ответ

3 голосов
/ 03 декабря 2010

Возможность перебора курсора является необязательным расширением, определяемым PEP 249 , и точная семантика зависит от используемого адаптера базы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...