Adrian Witas > Persistence-Entity-0.07 > Persistence::Entity::Query

Download:
Persistence-Entity-0.07.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.02   Source  

NAME ^

Persistence::Entity::Query - Database entity query.

CLASS HIERARCHY ^

 SQL::Query
    |
    +----Persistence::Entity::Query

SYNOPSIS ^

    my $entity_manager = $class->new(connection_name => 'my_connection');


    $entity_manager->add_entities(SQL::Entity->new(
        name                  => 'emp',
        unique_expression     => 'empno',
        columns               => [
            sql_column(name => 'ename'),
            sql_column(name => 'empno'),
            sql_column(name => 'deptno')
        ],
        indexes => [
            sql_index(name => 'emp_idx1', columns => ['empno'])
        ]
    ));

    package Employee;

    use Abstract::Meta::Class ':all';
    use Persistence::ORM ':all';
    entity 'emp';

    column empno => has('$.no') ;
    column ename => has('$.name');
    column deptno => has('$.deptno');

    my $query = $entity_manager->query(emp => 'Employee');
    $query->set_offset(20);
    $query->set_limit(5);
    my @emp = $query->execute();
   # do stuff $emp[0]->name

    my $query = $entity_manager->query('emp');
    $query->set_offset(20);
    $query->set_limit(5);
    my @emp = $query->execute();
    # do stuff $emp[0]->{ename}

DESCRIPTION ^

    Represents database query based on entity definition.

EXPORT ^

None

ATTRIBUTES

name
cursor_callback
condition_converter_callback

METHODS

execute
query_setup

SEE ALSO ^

SQL::Query Persistence::Entity

COPYRIGHT AND LICENSE ^

The Persistence::Entity::Query module is free software. You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the Perl README file.

AUTHOR ^

Adrian Witas, adrian@webapp.strefa.pl

syntax highlighting: