From: | Dave Cramer <pg(at)fastcrypt(dot)com> |
---|---|
To: | Balázs Zsoldos <balazs(dot)zsoldos(at)everit(dot)biz> |
Cc: | List <pgsql-jdbc(at)postgresql(dot)org> |
Subject: | Re: Why is columnNames in Connection.prepareStatement(sql, columnNames[]) automatically quoted |
Date: | 2015-07-31 00:47:14 |
Message-ID: | CADK3HHLgm8bETPMYSP78kPCDqacSR3f1OYReyPd7q57xdcU-fg@mail.gmail.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
Hi,
Yes there is a chance to change the driver, but I need more info. What do
you mean they are automatically quoted ???
Dave Cramer
dave.cramer(at)credativ(dot)ca
http://www.credativ.ca
On 30 July 2015 at 20:32, Balázs Zsoldos <balazs(dot)zsoldos(at)everit(dot)biz> wrote:
> Hi,
>
> I would like to write database independent SQL statements. Everything
> works well, until I call *Connection.prepareStatement(sql, columnNames[])*
> .
>
> In the SQL statement nothing is quoted and it works well. I am wondering,
> why the values in the columnNames are automatically quoted? Is it a bug or
> a feature?
>
> More info:
>
> I create the fields and tables in DDL without quoting them. Table and
> field names become upper or lower case based on the engine. E.g.: In case
> of Oracle, they will have upper-case names, in PostgreSQL they will have
> lower-case names.
>
> If I use Oracle, I must provide the *columnNames* parameter for the
> mentioned function with upper-case letters otherwise it does not work (I
> think that is a bug, too, but I guess it is harder to send a patch for
> Oracle than PostgreSQL :-) ). If I use any other database engines (Derby,
> SQLServer, Hsqldb) everything works well.
>
> If I use PostgreSQL, however, I must provide lower-case letters for the
> parameter as it is quoted inside. I do not think it should be quoted. If
> someone wants to quote those column names, it would be possible by
> providing the Strings with quotes like *Connection.prepareStatement(sql,
> "\"myCamelCaseColumnName\"");*
>
> Do you think there is any chance to change this in PostgreSQL JDBC driver
> or shall I write separate code for Postgres?
>
> Regards,
> *Balázs **Zsoldos*
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Dave Cramer | 2015-07-31 00:49:27 | Re: Why is columnNames in Connection.prepareStatement(sql, columnNames[]) automatically quoted |
Previous Message | Balázs Zsoldos | 2015-07-31 00:32:10 | Why is columnNames in Connection.prepareStatement(sql, columnNames[]) automatically quoted |