NAME
Teng::Plugin::SQLPager - paginate with sql
SYNOPSIS
package My::DB;
use parent qw/Teng/;
__PACKAGE__->load_plugin(qw/SQLPager/);
# in your application
$db->search_by_sql_with_pager(
q{SELECT * FROM member ORDER BY id DESC},
[],
{page => 1, rows => 20}
);
DESCRIPTION
This module searches database by SQL with paginate.
search_by_sql_with_pager method adds LIMIT clause automatically.
ARGUMENTS FOR search_by_sql_with_pager
You can pass arguments as following.
$db->search_by_sql_with_pager($sql, $binds, $opt[, $table_name]);
- $sql: Str
-
This is a SQL statement in string.
- $binds: ArrayRef[Str]
-
This is a bind values in arrayref.
- $opt: HashRef
-
Options for search_by_sql_with_pager. Important options are 'page' and 'rows'.
page is a current page number. rows is a entries per page.
- $table_name: Str
-
You can pass a table name.
This argument is optional. If you don't pass a table name, Teng guess table name automatically.
LIMITATIONS
This module does not work with Oracle since Oracle does not support limit clause.