Jak mogę wyświetlić listę wszystkich baz danych i tabel używając psql?

Próbuję nauczyć się administracji PostgreSQL i zacząłem uczyć się jak używać narzędzia wiersza poleceń psql.

Kiedy loguję się za pomocą psql --username=postgres, jak mogę wyświetlić listę wszystkich baz danych i tabel?

Próbowałem d, d i dS+ ale nic nie jest wyświetlane. Stworzyłem dwie bazy danych i kilka tabel za pomocą pgAdmin III, więc wiem, że powinny być na liście.

Rozwiązanie

Proszę zwrócić uwagę na następujące polecenia:

  • list lub l: lista wszystkich baz danych
  • dt: lista wszystkich tabel w bieżącej bazie danych

Nigdy nie zobaczysz tabel w innych bazach danych, te tabele nie są'widoczne. Musisz połączyć się z właściwą bazą danych, aby zobaczyć jej tabele (i inne obiekty).

Aby przełączyć bazę danych:

connect nazwa_bazy danych lub c nazwa_bazy danych.

Zobacz podręcznik o psql.

Komentarze (8)

Zawiera on listę baz danych:

SELECT datname FROM pg_database
WHERE datistemplate = false;

Wyświetla tabele w bieżącej bazie danych

SELECT table_schema,table_name
FROM information_schema.tables
ORDER BY table_schema,table_name;
Komentarze (6)

l jest również skrótem od list. Istnieje całkiem sporo komend ukośnikowych, które możesz wymienić w psql używając list.

Komentarze (0)