Oto kilka sposobów na pokazanie listy baz danych podczas używania psql z PostgreSQL.
Pierwsza opcja może być użyta, gdy jesteśmy już połączeni z PostgreSQL. Druga opcja może być użyta, gdy obecnie nie mamy połączenia z Postgresem.
\l i \list Polecenia
Możemy użyć \l lub \list aby zwrócić listę baz danych.
Składnia wygląda tak:
\l[+] or \list[+] [ pattern ]
Części w nawiasach kwadratowych [] są opcjonalne.
Najszybszy/najłatwiejszy sposób na uzyskanie listy baz danych wygląda następująco:
\l Przykładowy wynik:
List of databases +--------------+----------+----------+-------------+-------------+-----------------------+ | Name | Owner | Encoding | Collate | Ctype | Access privileges | +--------------+----------+----------+-------------+-------------+-----------------------+ | barney | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | krankykranes | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | music | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | pagila | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | pethotel | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | | template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +| | | | | | | postgres=CTc/postgres | | template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +| | | | | | | postgres=CTc/postgres | +--------------+----------+----------+-------------+-------------+-----------------------+
Żeby było jasne, uruchomiłem to polecenie, gdy byłem już połączony z PostgreSQL.
Ten sam wynik można uzyskać za pomocą \list zamiast \l .
Możemy dodać znak plus (+ ), aby zwrócić więcej informacji o każdej tabeli:
\l+ Przykładowy wynik:
List of databases +--------------+----------+----------+-------------+-------------+-----------------------+---------+------------+--------------------------------------------+ | Name | Owner | Encoding | Collate | Ctype | Access privileges | Size | Tablespace | Description | +--------------+----------+----------+-------------+-------------+-----------------------+---------+------------+--------------------------------------------+ | barney | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 8473 kB | pg_default | | | krankykranes | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 8289 kB | pg_default | | | music | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 8225 kB | pg_default | | | pagila | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 16 MB | pg_default | | | pethotel | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 8177 kB | pg_default | | | postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 8097 kB | pg_default | default administrative connection database | | template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +| 7905 kB | pg_default | unmodifiable empty database | | | | | | | postgres=CTc/postgres | | | | | template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +| 7905 kB | pg_default | default template for new databases | | | | | | | postgres=CTc/postgres | | | | +--------------+----------+----------+-------------+-------------+-----------------------+---------+------------+--------------------------------------------+
Otrzymujemy więc kilka dodatkowych kolumn z informacjami o rozmiarze, przestrzeni tabel itp.
Możemy również użyć wzorca, aby zwrócić tylko te bazy danych, które pasują do wzorca:
\l krank* Przykładowy wynik:
List of databases +--------------+----------+----------+-------------+-------------+-------------------+ | Name | Owner | Encoding | Collate | Ctype | Access privileges | +--------------+----------+----------+-------------+-------------+-------------------+ | krankykranes | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | +--------------+----------+----------+-------------+-------------+-------------------+
-l i --list Opcje połączenia
Gdy nie jesteśmy aktualnie połączeni z Postgresem, możemy połączyć się za pomocą -l lub --list opcja połączenia.
Gdy określona jest jedna z tych opcji, psql połączy się z Postgresem, wyświetli listę wszystkich dostępnych baz danych, a następnie wyjdzie.
Można go używać na następujące sposoby:
-l
--list Więc zamiast używać odwrotnego ukośnika, jest to myślnik lub dwa myślniki (w zależności od tego, którego używasz).
Aby użyć tej opcji, otwórz nowe okno terminala lub wiersz poleceń i wpisz:
psql -l Zakładając, że znajduje się w twojej zmiennej PATH, która powinna uruchomić PostgreSQL, wyświetlić wszystkie bazy danych, a następnie wyjść.
Przykładowy wynik:
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
--------------+----------+----------+-------------+-------------+-----------------------
barney | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
krankykranes | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
music | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
pagila | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
pethotel | barney | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
To samo można zastosować za pomocą --list :
psql --list