Thread: JDBC driver DatabaseMetaData.getTables() unconditionally lowercases tableName pattern

JDBC driver DatabaseMetaData.getTables() unconditionally lowercases tableName pattern

From
pgsql-bugs@postgresql.org
Date:
Dave Barnett (dave@lions.med.jhu.edu) reports a bug with a severity of 2
The lower the number the more severe it is.

Short Description
JDBC driver DatabaseMetaData.getTables() unconditionally lowercases tableName pattern

Long Description
According to Chapter 2 of the User's Guide, NAMES may be quoted to preserve case.  In the JDBC driver found in Postgres
7.0.2,jdbc2/DatabaseMetaData.java repeatedly converts the name pattern automatically to lowercase.  Removing these
improperconversions provides usable behavior. 

I think the driver shouldn't be doing anything to the pattern, so that the user may handle case conversions as needed.
Alternatively,the driver should simply not be doing this in the case that it is quoted. 

Current workarounds:
1. modify driver code and recompile driver
2. provide a '%' tableName pattern and sift through all the tables in user code checking for proper matches

-Dave Barnett

Sample Code


No file was uploaded with this report