Data::Stream::Bulk::DBI.3pm

Langue: en

Autres versions - même langue

Version: 2009-04-23 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Data::Stream::Bulk::DBI - N-at-a-time iteration of DBI statement results.

SYNOPSIS

         use Data::Stream::Bulk::DBI;
 
         my $sth = $dbh->prepare("SELECT hate FROM sql"); # very big resultset
         $sth->execute;
 
         return Data::Stream::Bulk::DBI->new(
                 sth => $sth,
                 max_rows => $n, # how many at a time
                 slice => [ ... ], # if you want to pass the first param to fetchall_arrayref
         );
 
 

DESCRIPTION

This implementation of Data::Stream::Bulk api works with DBI statement handles, using ``fetchall_arrayref'' in DBI.

It fetches "max_rows" at a time (defaults to 500).

ATTRIBUTES

sth
The statement handle to call "fetchall_arrayref" on.
slice
Passed verbatim as the first param to "fetchall_arrayref". Should usually be "undef", provided for completetness.
max_rows
The second param to "fetchall_arrayref". Controls the size of each buffer.

Defaults to 500.

METHODS

get_more
See Data::Stream::Bulk::DoneFlag.

Calls "fetchall_arrayref" to get the next chunk of rows.

all
Calls "fetchall_arrayref" to get the raminder of the data (without specifying "max_rows").