# Data::Stream::Bulk::DBI - N-at-a-time iteration of DBI statement results. - perldoc - [phpMan]

## NAME
    [Data::Stream::Bulk::DBI](https://www.chedong.com/phpMan.php/perldoc/Data%3A%3AStream%3A%3ABulk%3A%3ADBI/markdown) - N-at-a-time iteration of DBI statement results.

## VERSION
    version 0.11

## SYNOPSIS
            use [Data::Stream::Bulk::DBI](https://www.chedong.com/phpMan.php/perldoc/Data%3A%3AStream%3A%3ABulk%3A%3ADBI/markdown);

            my $sth = $dbh->prepare("SELECT hate FROM sql"); # very big resultset
            $sth->execute;

            return [Data::Stream::Bulk::DBI](https://www.chedong.com/phpMan.php/perldoc/Data%3A%3AStream%3A%3ABulk%3A%3ADBI/markdown)->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](https://www.chedong.com/phpMan.php/perldoc/Data%3A%3AStream%3A%3ABulk/markdown) 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](https://www.chedong.com/phpMan.php/perldoc/Data%3A%3AStream%3A%3ABulk%3A%3ADoneFlag/markdown).

        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.

