本文提供一系列常用的psql命令,能夠幫助你快速和高效的從數據庫中獲取數據。
Connect to PostgreSQL database
1.使用psql 連接到數據庫,回車後會提示你輸入密碼
[postgres@localhost ~]$ psql -dtest -Upostgres -W
Password for user postgres:
psql (10.7)
Type "help" for help.
test=# \q
2.如果你想連接遠端的主機,可以使用-h選項
[postgres@localhost ~]$ psql -h10.110.9.85 -dtest -Upostgres -W
Password for user postgres:
psql (10.7)
Type "help" for help.
test=#
3.連接到數據庫以後,可以切換到一個新的用戶下,原來的連接自動斷開。如果你忽略用戶名參數,則使用當前用戶。
[postgres@localhost data]$ psql
psql (10.7)
Type "help" for help.
postgres=# \c test
You are now connected to database "test" as user "postgres".
test=#
4.查看所有的數據庫名稱
postgres=# l
5.列出當前數據庫下的表
postgres=# dt
6.查看錶描述
postgres=# d table_name
7.查看當前數據庫下所有的schema
postgres=# dn
- 查看當前數據庫下所有的函數
postgres=#df
9.查看當前數據庫下所有的視圖
postgres=#dv
10.查看當前數據庫下所有的角色
postgres=#du
11.執行前一條命令
首先查詢數據庫當前版本
postgres=# SELECT version();
使用g 執行上一條命令,即SELECT version();
postgres=# g
12.查看psql所有的命令
postgres=# ?
13.查看特定命令的使用方法
比如, 如果你想知道ALTER TABLE命令的詳細信息,可以執行如下命令
postgres=# h ALTER TABLE
14.開啓顯示命令執行時間
test=# \timing
Timing is on.
test=# select version();
-------
PostgreSQL 10.7
Time: 83.978 ms
test=#
15.使用系統編輯器編輯命令
test=# select count(*) from baby;
test=#e
16.psql支持輸出格式化的命令,或者允許自己定製輸出的格式
沒有邊框的列輸出
test=#a
輸出HTML格式的文件
test=#H
17.輸出執行結果輸出到文件中
test=#o /tmp/test.out
test=# select version();
18.執行SQL腳本
postgres=# \i sql.sql
version
---------------------------------------------------------------------------
------------------------------
PostgreSQL 10.7 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 201506
23 (Red Hat 4.8.5-36), 64-bit
(1 row)
postgres=#