Why is columnNames in Connection.prepareStatement(sql, columnNames[]) automatically quoted

From: Balázs Zsoldos <balazs(dot)zsoldos(at)everit(dot)biz>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: Why is columnNames in Connection.prepareStatement(sql, columnNames[]) automatically quoted
Date: 2015-07-31 00:32:10
Message-ID: CAHEBw=S+ON9b+x0X0yavXC3S2Q0sz1GCL7HBp0BZSFQPdzH-_A@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

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*

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Dave Cramer 2015-07-31 00:47:14 Re: Why is columnNames in Connection.prepareStatement(sql, columnNames[]) automatically quoted
Previous Message Thomas Kellerer 2015-07-30 13:46:23 Re: need advice about out parameter settings while calling stored procedure in Java code