Re: Single quote as first character in string fails in compare

From: joel garry <joel-garry_at_home.com>
Date: Wed, 19 Oct 2011 20:05:53 -0700 (PDT)
Message-ID: <3a587ebf-e15a-45dd-ad98-13a7dfea2a86_at_r25g2000prg.googlegroups.com>



On Oct 10, 11:57 am, Mark D Powell <Mark.Powe..._at_hp.com> wrote:
> On Oct 10, 5:02 am, "Álvaro G. Vicario"
>
>
>
> <alvaro.NOSPAMTH..._at_demogracia.com.invalid> wrote:
> > El 07/10/2011 20:30, Joachim Verhagen escribi /wrote:
>
> > > I got a very strange problem.   If the first character in a string is
> > > a singlequoteI get a syntax error,  but that only happens in a
> > > compare and not in sqlplus.
>
> > > This is what happens:
>
> > > SELECT * FROM dual WHERE dummy ='''aaaa'
>
> > > DBArecordSet.OpenSet: Error from: 'OraOLEDB' 0x80040E14 (-2147217900)
> > > ORA-00933: SQL command not properly ended Native: 933  (help=.0)
>
> > > This goes  wrong with an OLEDB and ODBC connection.  It works in
> > > sqlplus.
>
> > I don't know what your client language is but here's an excerpt from the
> > ODBC chapter in the PHP manual:
>
> > Parameters in parameter_array will be substituted for placeholders in
> > the prepared statement in order. Elements of this array will be
> > converted to strings by calling this function.
>
> > Any parameters in parameter_array whichstartand end with single quotes
> > will be taken as the name of a file to read and send to the database
> > server as the data for the appropriate placeholder.
> > If you wish to store a string which actually begins and ends with single
> > quotes, you must add a space or other non-single-quotecharacter to the
> > beginning or end of the parameter, which will prevent the parameter from
> > being taken as a file name. If this is not an option, then you must use
> > another mechanism to store the string, such as executing the query
> > directly with odbc_exec()).
>
> >http://es.php.net/manual/en/function.odbc-execute.php
>
> > It isn't exactly your case (your string does not end with singlequote)
> > but this suggests that the ODBC implementation has a weird relationship
> > with single quotes.
>
> > --
> > --http://alvaro.es-lvaro G. Vicario - Burgos, Spain
> > -- Mi sitio sobre programaci n web:http://borrame.com
> > -- Mi web de humor satinado:http://www.demogracia.com
> > --
>
> I find this to be an interesting piece of information.  As is the fact
> a name canstartwith a sinlequote.  In Englishnamesabout the only
> time you run into single quotes innamesis with O'reilly, O'connor,
> etc ... and it is not a starting or ending.  Naturally I have seen
> quoted strings being stored but apparently the access is not via ODBC.
>
> HTH -- Mark D Powell --

So this evening, I get home, and my kid is studying AP statistics. He mentions how an example chart seems to be politically correct in the variety of names. This starts a conversation about names in computing, and I happen to mention I saw something online that claimed some names in the Netherlands started with a quote character. He immediately responds "Oh, some of my friends do that on Facebook so they get listed first." Forehead slap.

jg

--
_at_home.com is bogus.
http://www.signonsandiego.com/news/2011/oct/19/viasat-1-blasts-orbit/
Received on Wed Oct 19 2011 - 22:05:53 CDT

Original text of this message