U kunt de functie fetchall_arrayref gebruiken die een 'maxrows'-argument accepteert:
while (my $data = $dbc->fetchall_arrayref(undef, 10000)) {
for my $row( @{$data} ) {
$report->process_record($row);
}
}
Je zou ook kunnen kijken naar de RowCacheSize eigenschap die probeert te bepalen hoeveel records worden geretourneerd in een ophaalactie van uw stuurprogramma.