Data::Stream::Bulk::DBI - N-at-a-time iteration of DBI statement results.
version 0.11
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
);
This implementation of the Data::Stream::Bulk manpage api works with DBI statement
handles, using DBI/fetchall_arrayref.
It fetches max_rows at a time (defaults to 500).
- 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.
- get_more
-
See the Data::Stream::Bulk::DoneFlag manpage.
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).
Yuval Kogman <nothingmuch@woobling.org>
This software is copyright (c) 2012 by Yuval Kogman.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
|