Обсуждение: Query a list of tables
What is the SQL to do the following:
1) Return a list of all possible SCHEMA names within a database.
2) For a given SCHEMA return the list of all table names.
Thanks,
Lance Campbell
Project Manager/Software Architect
Web Services at Public Affairs
University of Illinois
217.333.0382
On Wed, Jul 23, 2008 at 8:56 AM, Campbell, Lance <lance@illinois.edu> wrote: > What is the SQL to do the following: > > > > 1) Return a list of all possible SCHEMA names within a database. > > 2) For a given SCHEMA return the list of all table names. You can either do it with the INFORMATION_SCHEMA, or the system catalogs. To see how to do it with the system catalogs, then start psql with the -E switch and issue \dn and set search_path='schemaname' and \d
I have a postgreSQl database and just wan to know how I can get to its data dictionary.
Is there a list somewhere of the system catalog tables and examples of querying it for administrative reasons? -----Original Message----- From: Scott Marlowe [mailto:scott.marlowe@gmail.com] Sent: Wednesday, July 23, 2008 10:02 AM To: Campbell, Lance Cc: pgsql-admin@postgresql.org Subject: Re: [ADMIN] Query a list of tables On Wed, Jul 23, 2008 at 8:56 AM, Campbell, Lance <lance@illinois.edu> wrote: > What is the SQL to do the following: > > > > 1) Return a list of all possible SCHEMA names within a database. > > 2) For a given SCHEMA return the list of all table names. You can either do it with the INFORMATION_SCHEMA, or the system catalogs. To see how to do it with the system catalogs, then start psql with the -E switch and issue \dn and set search_path='schemaname' and \d
Hi,
Under Schema I have;
information_schema
pg_catalog
pg_toast
pg_toast_temp_1
pg_temp_1
and then public which contains the tables with data for my database.
Is there a list somewhere of the system catalog tables and examples of
querying it for administrative reasons?
-----Original Message-----
From: Scott Marlowe [mailto:scott.marlowe@gmail.com]
Sent: Wednesday, July 23, 2008 10:02 AM
To: Campbell, Lance
Cc: pgsql-admin@postgresql.org
Subject: Re: [ADMIN] Query a list of tables
On Wed, Jul 23, 2008 at 8:56 AM, Campbell, Lance <lance@illinois.edu>
wrote:
> What is the SQL to do the following:
>
>
>
> 1) Return a list of all possible SCHEMA names within a database.
>
> 2) For a given SCHEMA return the list of all table names.
You can either do it with the INFORMATION_SCHEMA, or the system
catalogs. To see how to do it with the system catalogs, then start
psql with the -E switch and issue \dn and set search_path='schemaname'
and \d
--
Sent via pgsql-admin mailing list (pgsql-admin@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin
--
Gibson Chimhamhiwa
CSIR - Meraka Institute
P O Box 395, Pretoria 0001
South Africa
www.csir.co.za / www.meraka.org.za
Office: +27 12 841 2758
Mobile: +27 78 447 2879
Fax: +27 12 841 4720
E-mail:gchimhamhiwa@gmail.co.za
Campbell, Lance написа: > Is there a list somewhere of the system catalog tables and examples of > querying it for administrative reasons? [...] http://www.postgresql.org/docs/current/static/information-schema.html http://www.postgresql.org/docs/current/static/catalogs.html This mostly means you need to acquaint yourself with the fine manual. -- Milen A. Radev
Solution:
I found that by doing the following query you can get a list of all schemas or namespaces:
select distinct schemaname from pg_tables where schemaname not in ('information_schema', 'pg_catalog');
In order to select all of the tables within a schema or namespace:
select tablename from pg_tables where schemaname='name_of_schema';
Thanks for the responses.
From: pgsql-admin-owner@postgresql.org [mailto:pgsql-admin-owner@postgresql.org] On Behalf Of Gibson Chimhamhiwa
Sent: Wednesday, July 23, 2008 10:22 AM
To: pgsql-admin@postgresql.org
Subject: Re: [ADMIN] Query a list of tables
Hi,
Under Schema I have;
information_schema
pg_catalog
pg_toast
pg_toast_temp_1
pg_temp_1
and then public which contains the tables with data for my database.
On Wed, Jul 23, 2008 at 5:11 PM, Campbell, Lance <lance@illinois.edu> wrote:
Is there a list somewhere of the system catalog tables and examples of
querying it for administrative reasons?
-----Original Message-----
From: Scott Marlowe [mailto:scott.marlowe@gmail.com]
Sent: Wednesday, July 23, 2008 10:02 AM
To: Campbell, Lance
Cc: pgsql-admin@postgresql.org
Subject: Re: [ADMIN] Query a list of tables
On Wed, Jul 23, 2008 at 8:56 AM, Campbell, Lance <lance@illinois.edu>
wrote:
> What is the SQL to do the following:
>
>
>
> 1) Return a list of all possible SCHEMA names within a database.
>
> 2) For a given SCHEMA return the list of all table names.
You can either do it with the INFORMATION_SCHEMA, or the system
catalogs. To see how to do it with the system catalogs, then start
psql with the -E switch and issue \dn and set search_path='schemaname'
and \d
--
Sent via pgsql-admin mailing list (pgsql-admin@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin
--
Gibson Chimhamhiwa
CSIR - Meraka Institute
P O Box 395, Pretoria 0001
South Africa
www.csir.co.za / www.meraka.org.za
Office: +27 12 841 2758
Mobile: +27 78 447 2879
Fax: +27 12 841 4720
E-mail:gchimhamhiwa@gmail.co.za
From: pgsql-admin-owner@postgresql.org [mailto:pgsql-admin-owner@postgresql.org] On Behalf Of Gibson Chimhamhiwa
Sent: Wednesday, July 23, 2008 11:10 AM
To: pgsql-admin@postgresql.org
Subject: Re: [ADMIN] Query a list of tables
I have a postgreSQl database and just wan to know how I can get to its data dictionary.