Martin,
Ok -- let's get in sync here.
I was trying to fix the problem doing this:
insert into foo (datecol) ('01-JAN-1999 00:00:00')
which DBD::ODBC would:
insert into foo (datecol) ('01-JAN-1999 00??')
That's bad. I thought the code would already handle:
> > insert into mytable values('''2001-02-15 01:02:03')
Is there a problem or do I need to handle the ''? I actually don't think I
need to change it (by accident, not by design), since
' afaf 0:00:00 '' dfdf 0:00:00 '''
Would, I think, be parsed OK...
Please let me know and go ahead and send patches
..
Jeff
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On
> Behalf Of [EMAIL PROTECTED]
> Sent: Monday, February 04, 2002 9:09 AM
> To: [EMAIL PROTECTED]
> Subject: RE: Quoted Identiers - problem in DBD::ODBC 0.32
>
>
> OOPs I retract last statement about preparse not coping with
> quoted quotes. I
> was a little too hasty - I was using DBD::ODBC 0.32 which only
> uses " as the
> quoted identifier.
>
> Martin
>
> On 04-Feb-2002 [EMAIL PROTECTED] wrote:
> >
> > On 04-Feb-2002 [EMAIL PROTECTED] wrote:
> >> I installed DBD::ODBC 0.32 on a machine a few weeks ago and
> unnotticed by
> >> myself (while a colleague was away on holiday) some of his
> cron jobs using
> >> Perl
> >> and DBD::ODBC were failing. These used to work. It appears it
> was the change
> >> in
> >> dbd_preparse() to use " as the quote chr instead of '. I notice that
> >> DBD::ODBC
> >> 0.33_01 test release has the ' back again but in addition to ".
> >>
> >> Can this not be a call to SQLGetInfo for SQL_IDENTIFIER_QUOTE which is
> >> getinfo
> >> number 29?
> >>
> >> Hopefully, this would then work for any identifier quote chr.
> >
> > In addition to the above, I have discovered some SQL containing
> ' can confuse
> > the preparse method.
> >
> > e.g.
> >
> > assuming
> >
> > create table mytable(a char(100))
> >
> > insert into mytable values('''2001-02-15 01:02:03')
> >
> > is changed to
> >
> > insert into mjep1 values('''2001-02-15 01??')
> >
> > incorrectly. With SQL Server you use '' to escape a '.
> >
> > Martin
> >
> > --
> > Martin J. Evans
> > Easysoft Ltd, UK
> > Development
>
> --
> Martin J. Evans
> Easysoft Ltd, UK
> Development
>
>