Search Postgresql Archives

Re: Positional parameters and question mark notation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Dmitriy,

I considered just doing a string replacement, however this might be
potentially dangerous because in theory a query might contain a question
mark as part of a string or similar. Although I'm certain it would work
for us at the moment, it looks like a problem waiting to happen. Doing a
proper replacement (as ODBC probably does) most likely requires a full
blown SQL parser...

On Mon, 2014-01-20 at 14:08 +0400, Dmitriy Igrishin wrote:
> Hey Andreas,
> 
> 
> 2014/1/20 Andreas Lubensky <lubensky@xxxxxxxxxxxx>
>         Hi,
>         
>         Is there any way to make PostgreSQL support the question mark
>         (?)
>         notation instead of the dollar sign ($1, $2...) for prepared
>         statements?
>         Most databases use the question mark notation and we have a
>         set of
>         simple queries that are supposed to be portable across
>         different
>         database systems. So far we use PostgreSQL via ODBC, but now
>         we want to
>         switch to a native libpq implementation.
> I believe that C-function for replacing '?' with '$n' can easily
> implemented
> in the application code. Or you may want to look at libpqtypes:
> http://libpqtypes.esilo.com/
> 
> Or (if you are C++) you may want to look at SOCI:
> http://soci.sourceforge.net/
> 
> 
> -- 
> // Dmitriy.
> 
> 

-- 
with best regards,

Andreas Lubensky



-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux