curseur.fetchall () vs list (curseur) en Python

les deux méthodes renvoient une liste des éléments retournés de la requête, ai-je manqué quelque chose ici?
<!-Ou bien ont-ils des usages identiques?
<!-- 2-différences de performance?

28
demandé sur Filipp W. 2013-07-25 18:38:58

4 réponses

Si vous utilisez le curseur par défaut, un MySQLdb.cursors.Cursor,l'ensemble des résultats sera stocké du côté du client (c'est à dire dans une liste Python) par le temps de l' cursor.execute() est terminé.

par conséquent, même si vous utilisez

for row in cursor:

vous n'obtiendrez aucune réduction de l'empreinte mémoire. L'ensemble des résultats a déjà été stocké dans une liste (Voir