Class-DBI-SQL-Transformer-Quotify
view release on metacpan or search on metacpan
lib/Class/DBI/SQL/Transformer/Quotify.pm view on Meta::CPAN
$_[0] = join '', @s;
return $_[0];
}
sub _do_transformation {
my $me = shift;
my $sql = $me->{_sql};
my @args = @{ $me->{_args} };
my $caller = $me->{_caller};
# Each entry in @args is a SQL fragment. This will bugger with fragments that
# contain strings that match column names but are not supposed to be column names.
$me->_backtickify_arg($_) for @args;
$sql =~ s/__TABLE(?:\((.+?)\))?__/$me->_expand_table($1)/eg;
$sql =~ s/__JOIN\((.+?)\)__/$me->_expand_join($1)/eg;
$sql =~ s/__ESSENTIAL__/join ", ", map { $caller->db_Main->quote_identifier($_) } $caller->_essential/eg;
$sql =~
s/__ESSENTIAL\((.+?)\)__/join ", ", map $caller->db_Main->quote_identifier($1,$_), $caller->_essential/eg;
if ($sql =~ /__IDENTIFIER__/) {
my $key_sql = join " AND ", map $caller->db_Main->quote_identifier($_).'=?', $caller->primary_columns;
( run in 1.349 second using v1.01-cache-2.11-cpan-364913b4093 )