mysqldb pobiera całe zapytanie zawsze w jednym kawałku, nawet jeśli po prostu robię fetchone?

Więc jeśli to zrobię

 import MySQLdb
 conn = MySQLdb.connect(...)
 cur = conn.cursor()
 cur.execute("SELECT * FROM HUGE_TABLE")
 print "hello?"
 print cur.fetchone() 

Wygląda na to, że MySQLdb pobiera cały ogromny stół, zanim dotrze do „wydruku”. Wcześniej zakładałem, że w tle wykonałem leniwe wyszukiwanie „kursorem / stanem”, ale dla mnie to nie wygląda. Czy to jest poprawne? Jeśli tak, to dlatego, że musi tak być, czy jest to spowodowane ograniczeniem protokołu przewodowego MySQL? Czy to oznacza, że ​​java / hibernate zachowuje się tak samo?

Myślę, że muszę użyć klauzul MySQL i „limit 1” i krewnych, jeśli chcę przejść przez duży stół bez ciągnięcia wszystkiego od razu? Albo nie? Z góry dziękuję.

questionAnswers(3)

yourAnswerToTheQuestion