Short answer, assuming you are including hard-coded SQL into a Perl script:
Place the textual SQL, without any additional backslashes or extra quotes or 
whatsoever,
within the following:

my $sql_text = q(
<here goes your SQL>
);

Unless you have a closing ")" without a preceding opening "(" in that SQL text
(which would normally be invalid SQL)
the above should be valid Perl, resulting in a valid SQL statement in $sql_text
(to be passed to a DBI prepare or so).

In the unlikely event that you would have unbalanced quoted parentheses in your 
SQL,
you can replace the delimiters for the q operator by something else, viz. 
something not occurring in your SQL text, e.g.:

my $sql_text = q#
SELECT ')', "col_a"
FROM tblc
ORDER BY "col_a"
#;


-- Peter.


8 februari 2019 23:37:17 +01:00, skrev Mike Martin <redt...@gmail.com>:

> Has anyone done any work on converting SQL queries between RDBMS and perl?
> 
> My particular interest is DBD::Pg but anything would be of use
> 
> It would be very useful when I am testing complex SQL, it's very easy to miss 
> a \ or quote between the two
>
> Thanks
> Mike
>
>

Reply via email to