Changes for version 2.000003 - 2026-11-06

  • SECURITY, CVE-2026-121265: generate() (and so AUTOLOAD with allow_autoload) also treats an arrayref in its hashref or arrayref as one bind value. 2.000002 fixed only insert(), update() and values(): generate('update t', { name => [ "(SELECT ...)" ] }) still gave UPDATE T SET name = (SELECT ...). \[ $sql, @bind ] is literal SQL in generate() too; array_datatypes => 0 restores the old behaviour.
  • every module has a $VERSION, the same as SQL::Abstract

Documentation

Modules

A test of future possibilities
Pretty Printing DebugObj
Generate SQL from Perl data structures
replace a clause of a statement with a !clause key
new/experimental additions to SQL::Abstract
Reference documentation for SQL::Abstract
helpful methods for plugin authors
Helper function for testing SQL::Abstract
Represent SQL as an AST

Provides

in maint/lib/Chunkstrumenter.pm
in lib/SQL/Abstract/Formatter.pm
in lib/SQL/Abstract/Parts.pm