in reply to Re^2: Limitations of DBI (or) DBD::ODBC ?
in thread Limitations of DBI (or) DBD::ODBC ?

$sql = qq~

try changing that to a single q like
$sql = q~

I doubt that it will help much, but try it anyway. You don't need to worry about perl misunderstanding @-strings as arrays inside your sql.

As it won't interpolate the variables you wanted it to interpolate anyomore, also change all the $settings[...] to a simple ? in all occurrences and add the Array to the excute statement like this:
$sth2->execute( @settings );

Cheers, Sören

Replies are listed 'Best First'.
Re^4: Limitations of DBI (or) DBD::ODBC ?
by s_m_b (Acolyte) on Nov 04, 2005 at 09:38 UTC
    Thanks for the idea, but having rewritten the statements into portions, the error vanishes (being replaced by DATETIME problems, but that's another story!), so looks like DBD:ODBC has some significant issues.

    BTW: I'd tried the ? placeholders, but SQL server simply doesn't do them! Or perhaps the SQL interpreter in DBD:ODBC doesn't understand them....

    adding finish() between each call has helped too, so thanks guyus for your suggestions (helpful or otherwise ;)