Re: Bug - DatabaseMetaData.getCatalogs() was [Novice] Can't get list of databases with \list

From: Francisco Leovey <fleovey(at)yahoo(dot)com>
To: c(dot)frank(at)gmail(dot)com
Cc: pgsql-novice(at)postgresql(dot)org
Subject: Re: Bug - DatabaseMetaData.getCatalogs() was [Novice] Can't get list of databases with \list
Date: 2009-11-03 17:57:42
Message-ID: 812700.61747.qm@web51704.mail.re2.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc pgsql-novice

A simple query
 
  select datname from pg_database
 
will return all the database names
 
 

--- On Tue, 11/3/09, Richard Broersma <richard(dot)broersma(at)gmail(dot)com> wrote:

From: Richard Broersma <richard(dot)broersma(at)gmail(dot)com>
Subject: [NOVICE] Bug - DatabaseMetaData.getCatalogs() was [Novice] Can't get list of databases with \list
To: "Christopher Frank" <c(dot)frank(at)gmail(dot)com>
Cc: pgsql-novice(at)postgresql(dot)org, "pgsql-jdbc" <pgsql-jdbc(at)postgresql(dot)org>
Date: Tuesday, November 3, 2009, 3:36 PM

On Mon, Nov 2, 2009 at 1:05 PM, Christopher Frank <c(dot)frank(at)gmail(dot)com> wrote:

>> > As for JDBC, there may be something that gives equivalent information,
>> > but I
>> > couldn't find it.
>>
>> http://java.sun.com/javase/6/docs/api/java/sql/DatabaseMetaData.html
>>
>> getCatalogs()

> I had tried that but it only returned one database, the database to which I
> was already connected. There should have been 3 others.

I verified that the DatabaseMetaData.getCatalogs() only returns a
ResultSet with the currently connect database rather than all of the
databases in the PostgreSQL cluster.

I see there was a previous discussion on this topic, stating that
Databases and Catalogs are not the same, so only returning the
currently connected database is correct:

http://archives.postgresql.org/pgsql-jdbc/2007-02/msg00112.php

However, calling the DatabaseMetaData.getCatalogTerm() function states
that the PostgreSQL's equivalent to a Catalog is a "database".  For
this reason, it seems reasonable to me that getCatalogs() should
return a listing off all PostgreSQL databases.

If one really only wants the currently connected database,
Connection.getCatalog() will suffice.

--
Regards,
Richard Broersma Jr.

Visit the Los Angeles PostgreSQL Users Group (LAPUG)
http://pugs.postgresql.org/lapug

In response to

Browse pgsql-jdbc by date

  From Date Subject
Next Message Kris Jurka 2009-11-03 18:16:15 Re: Bug - DatabaseMetaData.getCatalogs() was [Novice] Can't get list of databases with \list
Previous Message Richard Broersma 2009-11-03 17:36:56 Bug - DatabaseMetaData.getCatalogs() was [Novice] Can't get list of databases with \list

Browse pgsql-novice by date

  From Date Subject
Next Message Lars Gustafsson 2009-11-03 18:00:32 corrupt db
Previous Message Richard Broersma 2009-11-03 17:36:56 Bug - DatabaseMetaData.getCatalogs() was [Novice] Can't get list of databases with \list