Changes for version 0.30 - 2005-01-10

  • General
  • Refactored SQL::Interpolate module into multiple modules. Everything except sql_interp-related functionality moved out of SQL::Interpolate and into DBIx::Interpolate, SQL::Interpolate::Filter, and SQL::Interpolate::Macro (new module). (recommended by mark s)
  • Reorganized macro processing. SQL::Interpolate contains only hooks for macro processing, and SQL::Interpolate::Macro implements various macros.
  • SQL::Interpolate
  • added sql_var type
  • added sql_literal type (thanks mark s)
  • ("WHERE x in", []) now generates "WHERE 1" not "WHERE NULL"
  • croak not die
  • macros, sql_var, and sql_literal can now exist in elements of aggregates (hashref and arrayref)
  • DBIx::Interpolate
  • DBIx::Interpolate is now derived from SQL::Interpolate.
  • Support for statement handle sets (stx/prepare).
  • Renamed select_key() to key_field().
  • SQL::Interpolate::Macro
  • SQL::Interpolate::SQL is now a macro for uniformity.
  • new macros: relations, sql_and, sql_fragment, sql_if, sql_link, sql_or, sql_paren, sql_rel
  • removed limit() macro since MySQL supports Postgres syntax. (thanks mark s)
  • Other
  • reorganized POD (thanks mark s)
  • reorganized test cases

Modules

Integrate SQL::Interpolate into DBI
Simplified interpolation of Perl variables into SQL statements
Source filtering for SQL::Interpolate
Macros and SQL filters for SQL::Interpolate

Provides

in lib/DBIx/Interpolate.pm
in lib/SQL/Interpolate/Macro.pm
in lib/SQL/Interpolate/Macro.pm
in lib/SQL/Interpolate/Macro.pm
in lib/SQL/Interpolate/Macro.pm
in lib/SQL/Interpolate.pm
in lib/SQL/Interpolate/Macro.pm
in lib/SQL/Interpolate/Macro.pm
in lib/SQL/Interpolate/Macro.pm
in lib/SQL/Interpolate/Macro.pm
in lib/SQL/Interpolate/Filter.pm
in lib/SQL/Interpolate/Macro.pm
in lib/SQL/Interpolate.pm