Class::DBI::AbstractSearch (3)
Leading comments
Automatically generated by Pod::Man 2.1801 (Pod::Simple 3.05) Standard preamble: ========================================================================
NAME
Class::DBI::AbstractSearch - Abstract Class::DBI's SQL with SQL::Abstract::LimitSYNOPSIS
package CD::Music; use Class::DBI::AbstractSearch; package main; my @music = CD::Music->search_where( artist => [ 'Ozzy', 'Kelly' ], status => { '!=', 'outdated' }, ); my @misc = CD::Music->search_where( { artist => [ 'Ozzy', 'Kelly' ], status => { '!=', 'outdated' } }, { order_by => "reldate DESC", limit_dialect => 'LimitOffset', limit => 1 offset => 2 });
DESCRIPTION
Class::DBI::AbstractSearch is a Class::DBI plugin to glue SQL::Abstract::Limit into Class::DBI.METHODS
Using this module adds following methods into your data class.- search_where
-
$class->search_where(%where);
Takes a hash to specify
WHEREclause. See SQL::Abstract for hash options.$class->search_where(\%where,\%attrs);
Takes hash reference to specify
WHEREclause. See SQL::Abstract for hash options. Takes a hash reference to specify additional query attributes. Class::DBI::AbstractSearch uses these attributes:-
- *
-
order_by
Array reference of fields that will be used to order the results of your query.
- *
-
limit_dialect
Scalar,
DBIhandle, object class, etc. that describes the syntax model for aLIMIT/OFFSETSQLclause. Please see SQL::Abstract::Limit for more information. - *
-
limit
Scalar value that will be used for
LIMITargument in a query. - *
-
offset
Scalar value that will be used for
OFFSETargument in a query.
-
Any other attributes are passed to the SQL::Abstract::Limit constructor, and can be used to control how queries are created. For example, to use '
AND' instead of 'OR' by default, use:$class->search_where(\%where, { logic => 'AND' });
-
AUTHOR
Tatsuhiko Miyagawa <miyagawa@bulknews.net> with some help from cdbi-talk mailing list, especially:
Tim Bunce Simon Wilcox Tony Bowden
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.