[Bast-commits] r5203 - in SQL-Abstract/1.x/branches/1.50_RC: .
lib/SQL t
norbi at dev.catalyst.perl.org
norbi at dev.catalyst.perl.org
Wed Nov 26 18:58:34 GMT 2008
Author: norbi
Date: 2008-11-26 18:58:34 +0000 (Wed, 26 Nov 2008)
New Revision: 5203
Modified:
SQL-Abstract/1.x/branches/1.50_RC/
SQL-Abstract/1.x/branches/1.50_RC/lib/SQL/Abstract.pm
SQL-Abstract/1.x/branches/1.50_RC/t/01generate.t
Log:
r5255 at vger: mendel | 2008-11-26 19:58:30 +0100
* Support for the { operator => \["...", @bind] } construct (to embed literal SQL with bind values).
Property changes on: SQL-Abstract/1.x/branches/1.50_RC
___________________________________________________________________
Name: svk:merge
- 4d5fae46-8e6a-4e08-abee-817e9fb894a2:/local/bast/SQL-Abstract/1.x/branches/1.50_RC:5233
+ 4d5fae46-8e6a-4e08-abee-817e9fb894a2:/local/bast/SQL-Abstract/1.x/branches/1.50_RC:5255
Modified: SQL-Abstract/1.x/branches/1.50_RC/lib/SQL/Abstract.pm
===================================================================
--- SQL-Abstract/1.x/branches/1.50_RC/lib/SQL/Abstract.pm 2008-11-26 14:24:48 UTC (rev 5202)
+++ SQL-Abstract/1.x/branches/1.50_RC/lib/SQL/Abstract.pm 2008-11-26 18:58:34 UTC (rev 5203)
@@ -536,6 +536,14 @@
$$val;
},
+ ARRAYREFREF => sub { # CASE: col => {op => \[$sql, @bind]}
+ my ($sub_sql, @sub_bind) = @$$val;
+ $sql = join ' ', $self->_convert($self->_quote($k)),
+ $self->_sqlcase($op),
+ $sub_sql;
+ @bind = @sub_bind;
+ },
+
UNDEF => sub { # CASE: col => {op => undef} : sql "IS (NOT)? NULL"
my $is = ($op =~ $self->{equality_op}) ? 'is' :
($op =~ $self->{inequality_op}) ? 'is not' :
Modified: SQL-Abstract/1.x/branches/1.50_RC/t/01generate.t
===================================================================
--- SQL-Abstract/1.x/branches/1.50_RC/t/01generate.t 2008-11-26 14:24:48 UTC (rev 5202)
+++ SQL-Abstract/1.x/branches/1.50_RC/t/01generate.t 2008-11-26 18:58:34 UTC (rev 5203)
@@ -352,6 +352,14 @@
stmt_q => 'SELECT * FROM `test` WHERE ( `a` > 1 + 1 AND `b` = ? )',
bind => [8],
},
+ #38
+ {
+ func => 'select',
+ args => ['test', '*', { a => {'<' => \["to_date(?, 'MM/DD/YY')", '02/02/02']}, b => 8 }],
+ stmt => 'SELECT * FROM test WHERE ( a < to_date(?, \'MM/DD/YY\') AND b = ? )',
+ stmt_q => 'SELECT * FROM `test` WHERE ( `a` < to_date(?, \'MM/DD/YY\') AND `b` = ? )',
+ bind => ['02/02/02', 8],
+ },
);
More information about the Bast-commits
mailing list