182 votes

Liste de toutes les tables dans postgresql information_schema

Quelle est la meilleure façon de lister toutes les tables du schéma d'information de PostgreSQL ?

Pour clarifier : je travaille avec une BD vide (je n'ai ajouté aucune de mes propres tables), mais je veux voir chaque table dans la structure information_schema.

253voto

RodeoClown Points 3949

Vous devriez être capable d'exécuter select * from information_schema.tables pour obtenir une liste de toutes les tables gérées par Postgres pour une base de données particulière.

Vous pouvez également ajouter un where table_schema = 'information_schema' pour voir uniquement les tables du schéma d'information.

102voto

phsaires Points 535

Pour lister vos tables, utilisez :

SELECT table_name FROM information_schema.tables WHERE table_schema='public'

Elle ne répertorie que les tables que vous créez.

48voto

\dt information_schema.

à partir de psql, ça devrait aller.

14voto

hzh Points 111

1.obtenir toutes les tables et vues de information_schema.tables, y compris celles de information_schema et pg_catalog.

select * from information_schema.tables

2.obtenir des tables et des vues appartenant à un certain schéma

select * from information_schema.tables
    where table_schema not in ('information_schema', 'pg_catalog')

3.obtenir des tables seulement (presque \dt )

select * from information_schema.tables
    where table_schema not in ('information_schema', 'pg_catalog') and
    table_type = 'BASE TABLE'

14voto

Chris Shoesmith Points 11

Le "\z" de COMMANDE est également un bon moyen de la liste de tables lorsque l'intérieur de la interactives psql session.

par exemple.

# psql -d mcdb -U admin -p 5555
mcdb=# /z
                           Access privileges for database "mcdb"
 Schema |              Name              |   Type   |           Access privileges
--------+--------------------------------+----------+---------------------------------------
 public | activities                     | table    |
 public | activities_id_seq              | sequence |
 public | activities_users_mapping       | table    |
[..]
 public | v_schedules_2                  | view     | {admin=arwdxt/admin,viewuser=r/admin}
 public | v_systems                      | view     |
 public | vapp_backups                   | table    |
 public | vm_client                      | table    |
 public | vm_datastore                   | table    |
 public | vmentity_hle_map               | table    |
(148 rows)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X