Re: BUG #1350: Backslash ecape charcter violates ISO/ANSI

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Ken Johanson <ken(at)kensystem(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #1350: Backslash ecape charcter violates ISO/ANSI
Date: 2004-12-18 03:51:14
Message-ID: 200412180351.iBI3pEh06441@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Ken Johanson wrote:
>
> >We have a TODO item:
> >
> > * Allow backslash handling in quoted strings to be disabled for
> > portability
> >
> > The use of C-style backslashes (.e.g. \n, \r) in quoted strings is not
> > SQL-spec compliant, so allow such handling to be disabled.
> >
> >Unfortunately that's all we have. :-)
> >
> >
> >
> Thanks, glad to hear it's on the radar. From what I can tell it the
> broadest reaching standards incompatibility in the server. And, it's

That is probably true.

> preventing some project managers from adopting the server as an
> alternative to the commercial ones (Its always been an easy-to-cite, and
> well justified concern that the backslash behavior is incompatible with
> other DBs and specs).

We don't hear it very often, perhaps once every four months. You have
to double single quotes from user data anyway so most of our interfaces
have a function that does this and handles backslashes too.

Our TODO list probably has even more items you could cite as reasons
_not_ to use PostgreSQL. :-) When it becomes a key issue for someone I
suppose they will code a fix for it.

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Bruce Momjian 2004-12-18 04:05:10 Re: syntax error causes crafted data to be executed in shell
Previous Message Thomer M. Gil 2004-12-18 02:49:09 Re: syntax error causes crafted data to be executed in shell