Name : perl-SQL-Abstract-Limit
| |
Version : 0.143
| Vendor : obs://build_opensuse_org/devel:languages:perl
|
Release : lp154.1.1
| Date : 2023-01-27 16:55:54
|
Group : Unspecified
| Source RPM : perl-SQL-Abstract-Limit-0.143-lp154.1.1.src.rpm
|
Size : 0.04 MB
| |
Packager : https://www_suse_com/
| |
Summary : Portable LIMIT emulation
|
Description :
Portability layer for LIMIT emulation.
* new( case => \'lower\', cmp => \'like\', logic => \'and\', convert => \'upper\', limit_dialect => \'Top\' )
All settings are optional.
* limit_dialect
Sets the default syntax model to use for emulating a \'LIMIT $rows OFFSET $offset\' clause. Default setting is \'GenericSubQ\'. You can still pass other syntax settings in method calls, this just sets the default. Possible values are:
LimitOffset PostgreSQL, SQLite LimitXY MySQL, MaxDB, anything that uses SQL::Statement LimitYX SQLite (optional) RowsTo InterBase/FireBird
Top SQL/Server, MS Access RowNum Oracle FetchFirst DB2 Skip Informix GenericSubQ Sybase, plus any databases not recognised by this module
$dbh a DBI database handle
CDBI subclass CDBI object
other DBI-based thing
The first group are implemented by appending a short clause to the end of the statement. The second group require more intricate wrapping of the original statement in subselects.
You can pass a DBI database handle, and the module will figure out which dialect to use.
You can pass a Class::DBI subclass or object, and the module will find the \'$dbh\' and use it to find the dialect.
Anything else based on DBI can be easily added by locating the \'$dbh\'. Patches or suggestions welcome.
Other options are described in SQL::Abstract.
* select( $table, \\AATTfields, $where, [ \\AATTorder, [ $rows, [ $offset ], [ $dialect ] ] ] )
Same as \'SQL::Abstract::select\', but accepts additional \'$rows\', \'$offset\' and \'$dialect\' parameters.
The \'$order\' parameter is required if \'$rows\' is specified.
The \'$fields\' parameter is required, but can be set to \'undef\', \'\'\'\' or \'\'*\'\' (all these get set to \'\'*\'\').
The \'$where\' parameter is also required. It can be a hashref or an arrayref, or \'undef\'.
* where( [ $where, [ \\AATTorder, [ $rows, [ $offset ], [ $dialect ] ] ] ] )
Same as \'SQL::Abstract::where\', but accepts additional \'$rows\', \'$offset\' and \'$dialect\' parameters.
Some SQL dialects support syntaxes that can be applied as simple phrases tacked on to the end of the WHERE clause. These are:
LimitOffset LimitXY LimitYX RowsTo
This method returns a modified WHERE clause, if the limit syntax is set to one of these options (either in the call to \'where\' or in the constructor), and if \'$rows\' is passed in.
Dies via \'croak\' if you try to use it for other syntaxes.
\'$order\' is required if \'$rows\' is set.
\'$where\' is required if any other parameters are specified. It can be a hashref or an arrayref, or \'undef\'.
Returns a regular \'WHERE\' clause if no limits are set.
* insert
* update
* delete
* values
* generate
See SQL::Abstract for these methods.
\'update\' and \'delete\' are not provided with any \'LIMIT\' emulation in this release, and no support is planned at the moment. But patches would be welcome.
|
RPM found in directory: /packages/linux-pbone/ftp5.gwdg.de/pub/opensuse/repositories/devel:/languages:/perl:/CPAN-S/15.4/noarch |