NAME

DBIO::SQLMaker::ClassicExtensions - Class containing generic enhancements to SQL::Abstract

VERSION

version 0.900000

DESCRIPTION

This module is not intended to be used standalone. Instead it represents a quasi-role, that one would "mix in" via classic @ISA inheritance into a DBIO::SQLMaker-like provider. See "connect_call_rebase_sqlmaker" in DBIO::Storage::DBI for more info.

Currently the enhancements over SQL::Abstract are:

  • Support for JOIN statements (via extended table/from support)

  • Support of functions in SELECT lists

  • GROUP BY/HAVING support (via extensions to the order_by parameter)

  • A rudimentary multicolumn IN operator

  • Support of ...FOR UPDATE type of select statement modifiers

METHODS

_quoting_enabled

_quote_chars

belch

puke

_quote

_where_op_NEST

select

_assemble_binds

_lock_select

insert

_recurse_fields

_parse_rs_attrs

_order_by

_split_order_chunk

_table

_generate_join_clause

_recurse_from

_gen_from_blocks

_from_chunk_to_sql

_join_condition

_where_op_multicolumn_in

apply_limit

$sql = $self->apply_limit($sql, $rs_attrs, $rows, $offset);

Applies LIMIT/OFFSET to a SELECT statement. The default implementation uses the SQL standard LIMIT ? OFFSET ? syntax supported by PostgreSQL, SQLite, and most modern databases.

Database drivers override this method to provide their own syntax. For example, MySQL uses LIMIT ?, ? (offset-first), Oracle uses ROWNUM, and SQL Server uses ROW_NUMBER() OVER().

_rno_default_order

_SkipFirst

_FirstSkip

_RowNum

_prep_for_skimming_limit

_Top

_FetchFirst

_GenericSubQ

_subqueried_limit_attrs

_unqualify_colname

AUTHOR

DBIO & DBIx::Class Authors

COPYRIGHT AND LICENSE

Copyright (C) 2026 DBIO Authors Portions Copyright (C) 2005-2025 DBIx::Class Authors Based on DBIx::Class, heavily modified.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.