On Thu, 2 Jan 2003 23:17:10 -0800 (PST), Michael A Chase wrote:
>Comments interspersed.

>Fortunately it is part of the trace() output.

Nevertheless, this is still a bug in DBI/Other. It's probably related
to the fact that with HandleError => sub ... DBI often outputs the
_previous_ SQL when an error occurs. But forget that until I generate
such an error and report it.

>I haven't seen backticks used as identifier quotes before.
>They may be confusing either ODBC or Access.

No, they're what is reported by $dbh -> tables();

>>my($error) = shift -> text();
>
>The parenthesis are not required by my.  They provide a list
>context which may result in a different result from some
>subroutines than what you expect.

They're required by my personal convention.

I'll try my(@error) later.

>It looks like Access via ODBC thinks you are selecting from more
than

Yep.

>one table.  Try quoting the table name with brackets ([]) or normal
>quotes (") and see if that avoids this error.
>
>Something like this (untested) should do it for you:
>
>my $quoted_table = $dbh -> quote_identifier( "Nathan Bailey" );
>my $sql = 'select dpt_cde, cmt from $quoted_table';

I could not get any form of [] to work.

If you print the output of $dbh -> quote_identifier('X Y') you'll see
DBI has added backticks.

So, no progress I'm afraid.
--
Cheers
Ron Savage, [EMAIL PROTECTED] on 03/01/2003
http://savage.net.au/index.html


Reply via email to