cursor.fetchall
oznacza, że ładujesz wszystkie dane do pamięci jednocześnie, zamiast robić to powoli, gdy jest to potrzebne.
Zastąp
row = cur.fetchall()
for row in rows:
przez
for row in cur:
cursor.fetchall
oznacza, że ładujesz wszystkie dane do pamięci jednocześnie, zamiast robić to powoli, gdy jest to potrzebne.
Zastąp
row = cur.fetchall()
for row in rows:
przez
for row in cur: