2010-05-19 4 views
2

Existe-t-il une méthode simple et efficace :) ou la lecture séquentielle d'un très grand nombre de lignes en utilisant Zend_Db?Comment lire efficacement un grand nombre de lignes à l'aide de Zend_Db?

Fondamentalement, j'ai besoin de traiter toute la table, rangée par rangée. La table est grande, la séquence de touches primaires n'est pas garantie (c'est-à-dire pas un auto-incrémentation, mais est UNSIGNED INT). Quelle est la meilleure façon d'aborder cela?

Environnement: PHP 5.2, Zend Framework 1.10, MySQL 5.1

Répondre

1

Vous pouvez toujours charger un sous-ensemble d'enregistrements en utilisant la fonction limite.

$table = new Default_Models_Something(); 
$table = $table->fetchAll($table ->select(true)->limit(10, $offset)); 

Donc, avec cette logique que vous trouverez sur le nombre d'enregistrements dans le tableau, puis extraire 10 enregistrements à la fois incrémenter votre décalage à chaque fois.

Questions connexes