Data::Stream::Bulk::DBI(3)

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

VERSION
version 0.11

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").

AUTHOR
Yuval Kogman <nothingmuch@woobling.org>

COPYRIGHT AND LICENSE
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.