Changes log for Perl extension SQL::Statement

Version 1.08, released 20 April, 2004

 * fixed bug in JOIN handling introduced in 1.06

Version 1.07, released 20 April, 2004

 * fixed infinite recursion bug with empty IN() predicate
   thanks chromatic, for the patch

 * fixed case issues with table aliases in joins
   thanks chromatic, for bug report

Version 1.06, released 18 April, 2004

 * column and table name hashes now default to case sensitive

 * where() method now supported as per the docs

Version 1.005, released 26 October, 2002

 * added support for MySQL-like "DROP TABLE IF EXISTS"

 * fixed bug in dotted column names e.g. tableA.colB

 * fixed bug in MAX and MIN (thanks Michael Kovacs,

 * fixed bug in ORDER BY (when col names not in SELECT list)
   Thanks Janet Goldstein <>

Version 1.004, released 13 March, 2002

 * added support for delimited identifiers (inside double quotes);
   these are case sensitive and can contain spaces and other
   special chars

 * added support for two forms of escaping single quotes inside
   quoted values: 'O\'Brien' or  'O''Brien'

 * added support for  both C-Style and SQL-Style double-hypen
   comments,  e.g.  /* comment */ or -- comment

 * added for use with $dbh->get_info()

 * updated the readme file

 * fixed bug in update that refers to its own columns
   (e.g. SET num = num + 2)

 * fixed bug in MIN and MAX when used with strings
   Thanks Dean Kopesky <>

Version 1.003, released 01 March, 2002

 * identifiers (names of columns, tables, and table name
   aliases) are now all case insensitive as required by the SQL
   standard. all older versions including the XS versions used
   case sensitive column names

 * added numerous examples to
 * improved and/or fixed bugs in:

   * placeholder support
     Thanks Achim Grolms <>

   * ORDER BY clause
     Thanks Jan Stocker <>

   * LIKE/CLIKE/RLIKE/IN predicates
     Thanks Udo Beckmann <>

   * table name aliases in explicit joins

Version 1.002, released 5 February, 2002

 * added backwards compatiblity: both SQL::Statement and
   SQL::Parser now work in perl version 5.004 and above.

 * changed defaults for DBD::CSV so it now accepts new SQL
   without adding extra flags to scripts

 * added support for SQL comments

 * added support for temporary tables and on commit clauses in
   CREATE statements and drop behaviour flags in DROP statements
   (SQL::Parser only, not supported by SQL::Statement)

 * fixed bugs in qualified column names (e.g. tableA.*), and in
   joins using ON or WHERE

Version 1.001, released January 17,2002

Fixed bug in UPDATE that caused the new value to be a hash
rather than a scalar.

Version 1.0, released January 15, 2002

This is the first CPAN release of the pure perl version of the
module.  It was previously released in an XS version by Jochen
Wiedman who has turned over maintenance of it to me.

The new Pure Perl version of SQL::Statement supports everything
supported by the XS version and, additionally, at least partial
support for the following features that are not supported at all
by the XS version:

 * Explicit and implicit joins
 * Table name aliases
 * Set functions
 * String functions
 * String concatenation
 * Numeric expressions
 * IN predicate
 * BETWEEN predicate
 * Alphabetic comparison in WHERE clauses
 * Ordering of text that looks like a number
 * Verbose error messages for both Parsing and Execution errors