NAME
DBIx::SQLEngine::Criteria - Struct for database criteria info
SYNOPSIS
my $crit = DBIx::SQLEngine::Criteria->type_new( $type, ... );
print $crit->sql_where();
DESCRIPTION
DBIx::SQLEngine::Criteria objects hold information about particular query criteria.
REFERENCE
Constructor
Multiple subclasses based on type.
- new
-
Abstract. Implemented in each subclass
- type_new
-
DBIx::SQLEngine::Criteria->type_new( $type, @args ) : $criteria
Looks up type, then calls new.
- type
-
Multiple subclasses based on type. (See "subclass_name" in Class::MakeMethods::Template::ClassName.)
Generic Argument Parsing
- auto
-
DBIx::SQLEngine::Criteria->auto( $sql_string ) : $criteria DBIx::SQLEngine::Criteria->auto( [ $sql_string, @params ] ) : $criteria DBIx::SQLEngine::Criteria->auto( { fieldname => matchvalue, ... } ) : $criteria DBIx::SQLEngine::Criteria->auto( $criteria_object ) : $criteria_object
Convert any one of several standard criteria representations into a DBIx::SQLEngine::Criteria object.
- auto_and
-
DBIx::SQLEngine::Criteria->auto( @any_of_the_above ) : $criteria
Create a single criteria requiring the satisfaction of each of the separate criteria passed in. Supports the same argument forms as auto.
- auto_where
-
DBIx::SQLEngine::Criteria->auto_where( @any_of_the_above ) : $sql, @params
Create a single criteria requiring the satisfaction of each of the separate criteria passed in, and returns its sql_where results. Supports the same argument forms as auto.
INCLUDED SUBCLASSES
The following criteria subclasses are included in this distribution:
Logical Groupings
- And
-
Requires all of its subclauses to be true.
- Or
-
Requires at least one of its subclauses to be true.
- Not
-
Requires its one subclause to be false.
Comparison
- Equality
-
Requires an exact match with its comparison value.
- Greater
-
Requires a value higher than its comparison value.
- Lesser
-
Requires a value lower than its comparison value.
- Like
-
Requires a value that matches its comparison value, including any SQL wildcards.
- StringComparison
-
Functions as an Equality unless a wildcard is used, in which case it's a Like.
Programmer Convenience
- HashGroup
-
Easy way to create a group of StringComparison criteria.
- LiteralSQL
-
Encapsulates a snippet of literal SQL, optionally with placeholder parameters.
Backwards Compatibility
- StringEquality
-
Empty subclass to support an old name for Equality Criteria.
- NumericLesser
-
Empty subclass to support an old name for Lesser Criteria.
SEE ALSO
See DBIx::SQLEngine for the overall interface and developer documentation.
See DBIx::SQLEngine::Docs::ReadMe for general information about this distribution, including installation and license information.