NAME

DBIx::Custom::Result - Result of select statement

SYNOPSIS

Get the result of select statement.

# Result
my $result = $dbi->select(table => 'books');

Fetch row into array.

# Fetch a row into array
while (my $row = $result->fetch) {
    my $author = $row->[0];
    my $title  = $row->[1];
    
}

# Fetch only a first row into array
my $row = $result->fetch_first;

# Fetch multiple rows into array of array
while (my $rows = $result->fetch_multi(5)) {
    my $first_author  = $rows->[0][0];
    my $first_title   = $rows->[0][1];
    my $second_author = $rows->[1][0];
    my $second_value  = $rows->[1][1];

}

# Fetch all rows into array of array
my $rows = $result->fetch_all;

Fetch row into hash.

# Fetch a row into hash
while (my $row = $result->fetch_hash) {
    my $title  = $row->{title};
    my $author = $row->{author};
    
}

# Fetch only a first row into hash
my $row = $result->fetch_hash_first;

# Fetch multiple rows into array of hash
while (my $rows = $result->fetch_hash_multi(5)) {
    my $first_title   = $rows->[0]{title};
    my $first_author  = $rows->[0]{author};
    my $second_title  = $rows->[1]{title};
    my $second_author = $rows->[1]{author};

}

# Fetch all rows into array of hash
my $rows = $result->fetch_hash_all;

ATTRIBUTES

sth

my $sth = $reuslt->sth
$result = $result->sth($sth);

Statement handle of DBI.

default_filter

my $default_filter = $result->default_filter;
$result            = $result->default_filter('decode_utf8');

Default filter when a row is fetched.

filter

my $filter = $result->filter;
$result    = $result->filter({title  => 'decode_utf8',
                              author => 'decode_utf8'});

Filters when a row is fetched. This overwrites default_filter.

METHODS

DBIx::Custom::Result inherits all methods from Object::Simple and implements the following new ones.

fetch

my $row = $result->fetch;

Fetch a row into array.

fetch_first

my $row = $result->fetch_first;

Fetch only a first row into array and finish statment handle.

fetch_multi

my $rows = $result->fetch_multi(5);

Fetch multiple rows into array of array. Row count must be specified.

fetch_all

my $rows = $result->fetch_all;

Fetch all rows into array of array.

fetch_hash

my $row = $result->fetch_hash;

Fetch a row into hash

fetch_hash_first

my $row = $result->fetch_hash_first;

Fetch only first row into hash and finish statment handle.

fetch_hash_multi

my $rows = $result->fetch_hash_multi(5);

Fetch multiple rows into array of hash Row count must be specified.

fetch_hash_all

my $rows = $result->fetch_hash_all;

Fetch all rows into array of hash.