Re: I can't get the database's list

From: Kris Jurka <books(at)ejurka(dot)com>
To: miguel manzano <miguel(dot)miguelmanzano(at)gmail(dot)com>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: I can't get the database's list
Date: 2010-06-09 06:09:17
Message-ID: alpine.BSO.2.00.1006090206001.2333@leary.csoft.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

On Tue, 8 Jun 2010, miguel manzano wrote:

> I try to obtain the database's list in my instalation but when I use :
>
> System.out.println("Driver : ");
> System.out.println(" " + md.getDatabaseProductName() );
> System.out.println(" " + md.getDatabaseProductVersion() );
> ResultSet catalogRs = md.getCatalogs();
>
> while ( catalogRs.next() ){
>
> System.out.println("Catalog " + catalogRs.getString(1));
> ResultSet tableRs =
> md.getTables(catalogRs.getString(1),"%","%",(String []) null);
> }
> }
> I just got only the name of the database at I have conected but the
> another databases didn't figure in the list.

The JDBC driver avoids returning all the databases on the server because
it cannot access them. It can only access the current database so that is
all it returns from getCatalogs. We made this decision intentionally to
handle the exact situation that your next getTables call reveals. If we
returned other databases in getCatalogs, people would try to use them in
other database metadata calls which would not work.

Kris Jurka

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Kris Jurka 2010-06-09 06:10:55 Re: IllegalArgumentException in batch execution
Previous Message miguel manzano 2010-06-09 02:22:07 I can't get the database's list