PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

2 начина за показване на всички бази данни в PostgreSQL (psql)

Ето няколко начина да покажете списък с бази данни, когато използвате psql с PostgreSQL.

Първата опция може да се използва, когато вече сме свързани с PostgreSQL. Втората опция може да се използва, когато в момента нямаме връзка с Postgres.

\l и \list Команди

Можем да използваме или \l или \list за да върнете списък с бази данни.

Синтаксисът е така:

\l[+] or \list[+] [ pattern ]

Частите в квадратни скоби [] са по избор.

Така че най-бързият/лесният начин да получите списък с бази данни е така:

\l

Примерен резултат:

                                    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 |
+--------------+----------+----------+-------------+-------------+-----------------------+

Само за да е ясно, изпълних тази команда, когато вече бях свързан с PostgreSQL.

Същият резултат може да се получи с помощта на \list вместо \l .

Можем да добавим знак плюс (+ ), за да върнете повече информация за всяка таблица:

\l+

Примерен резултат:

                                                                      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 |         |            |                                            |
+--------------+----------+----------+-------------+-------------+-----------------------+---------+------------+--------------------------------------------+

Така получаваме няколко допълнителни колони с информация за размера, пространството за таблица и т.н.

Можем също да използваме шаблон, за да върнем само тези бази данни, които съответстват на шаблона:

\l krank*

Примерен резултат:

                                  List of databases
+--------------+----------+----------+-------------+-------------+-------------------+
|     Name     |  Owner   | Encoding |   Collate   |    Ctype    | Access privileges |
+--------------+----------+----------+-------------+-------------+-------------------+
| krankykranes | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |                   |
+--------------+----------+----------+-------------+-------------+-------------------+

-l и --list Опции за свързване

Когато в момента не сме свързани с Postgres, можем да се свържем с помощта на -l или --list опция за свързване.

Когато е посочена една от тези опции, psql ще се свърже с Postgres, ще изброи всички налични бази данни, след което ще излезе.

Може да се използва по следните начини:

-l
--list

Така че вместо да използвате обратната наклонена черта, това е или тире, или две тирета (в зависимост от това кое от тях използвате).

За да използвате тази опция, отворете нов терминален прозорец или команден ред и въведете следното:

psql -l

Ако приемем, че е във вашата променлива PATH, това трябва да стартира PostgreSQL, да изброи всички бази данни и след това да излезете.

Примерен резултат:

                                   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

Същото може да се приложи с помощта на --list :

psql --list

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Не мога да намеря заглавката 'libpq-fe.h при опит за инсталиране на pg gem

  2. Динамично генериране на колони за кръстосана таблица в PostgreSQL

  3. Postgres копирайте Heroku Production DB към локалната база за разработка

  4. Не може да се изтрие база данни

  5. Сортиране на елементи от масива