NAME
Class::DBI::AbstractSearch - Abstract Class::DBI's SQL with SQL::Abstract::Limit
SYNOPSIS
package
CD::Music;
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 WHERE clause. See SQL::Abstract for hash options.
$class
->search_where(\
%where
,\
%attrs
);
Takes hash reference to specify WHERE clause. 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, DBI handle, object class, etc. that describes the syntax model for a LIMIT/OFFSET SQL clause. Please see SQL::Abstract::Limit for more information.
limit
Scalar value that will be used for LIMIT argument in a query.
offset
Scalar value that will be used for OFFSET argument 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.
SEE ALSO
Class::DBI, SQL::Abstract, SQL::Abstract::Limit
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 123:
You forgot a '=back' before '=head1'