Re: DatabaseMetaData.getColumns does not return full qualified type

From: Christian Schröder <Christian(dot)Schroeder(at)deriva(dot)de>
To: Dave Cramer <pg(at)fastcrypt(dot)com>
Cc: "pgsql-jdbc(at)postgresql(dot)org" <pgsql-jdbc(at)postgresql(dot)org>, Jan Strube <Jan(dot)Strube(at)deriva(dot)de>
Subject: Re: DatabaseMetaData.getColumns does not return full qualified type
Date: 2016-05-03 09:02:46
Message-ID: 868ea2323b414d4eb514d9c3130c69c3@MSEX-04-FRA9.corp.solvians.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Hi Dave and list,
I have just noticed that this has been implemented in driver version 9.4.1208. So I guess it's time for a driver update. :-)

Regards,
Christian

Von: davecramer(at)gmail(dot)com [mailto:davecramer(at)gmail(dot)com] Im Auftrag von Dave Cramer
Gesendet: Montag, 2. Mai 2016 20:24
An: Christian Schröder <Christian(dot)Schroeder(at)deriva(dot)de>
Cc: pgsql-jdbc(at)postgresql(dot)org; Jan Strube <Jan(dot)Strube(at)deriva(dot)de>
Betreff: Re: [JDBC] DatabaseMetaData.getColumns does not return full qualified type

Create a bug in github and a patch would be wonderful!

Thanks

Dave Cramer

davec(at)postgresintl(dot)com
www.postgresintl.com

On 2 May 2016 at 11:35, Christian Schröder <Christian(dot)Schroeder(at)deriva(dot)de> wrote:
Hi list,
The "DatabaseMetaData.getColumns" method returns a result set with metadata for a table. This result set has a column "TYPE_NAME", which should contain the database type name. According to the documentation, "for a UDT the type name is fully qualified".
However, the current implementation does never return a fully qualified value. This can be easily proven by creating an enum (or a domain type) in a schema other than "public", using this type in a table and then querying the metadata for this table.
The type name is fetched in the "getPGType" method of the "TypeInfoCache" using the following query (for database version > 7.3): SELECT typname FROM pg_catalog.pg_type WHERE oid = ?. This query could easily be extended to fetch the schema name together with the type name.
Is there  a reason for the current behavior? Or is it a bug? Should I create a bug in GitHub, or simply provide a patch?

Regards,
Christian

--
Sent via pgsql-jdbc mailing list (pgsql-jdbc(at)postgresql(dot)org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-jdbc

In response to

Browse pgsql-jdbc by date

  From Date Subject
Next Message peter.penzov 2016-05-06 19:14:58 org.postgresql.util.PSQLException: ERROR: column "file" is of type oid but expression is of type bytea
Previous Message Philippe Marschall 2016-05-03 07:18:55 Re: Cast java.sql.Connection to PGConnection