【PostgreSQL】よく使う pdqlコマンド

■ はじめに

https://dk521123.hatenablog.com/entry/2014/09/11/002003

で扱った pdqlコマンドについて、よく使うのをまとめておく。
自分用のメモ。

目次

【1】環境確認
 1)インストールされているのか?
 2)インストール
【2】pdqlコマンド
 1)ログイン / DB接続
 2)データベース表示
 3)テーブル定義表示
 4)テーブル一覧表示
 5)データ表示
 6)SQLファイル実行
 7)切断 (Quit)

【1】環境確認

1)インストールされているのか?

# version表示で確認する
psql --version

2)インストール

Ubuntuの場合

sudo apt install postgresql

【2】pdqlコマンド

1)ログイン / DB接続

# psql -h [ホスト名] -p [ポート番号] -d [データベース] -U [ユーザ名]
psql -h localhost -p 5432 -d postgres -U postgres

【補足】AWS の RDS で 初期DBを作成しなかった場合

「-d postgres」でログインする

SQLファイル実行だけなら

# psql -f [SQLファイル] -U [ユーザ名] -d [データベース] -h [ホスト名]
psql -f ./ddl.sql -U postgres -d postgres -h localhost

SQL文実行だけなら

# psql -c [SQL文] -A -U [ユーザ名] -d [データベース] -h [ホスト名]
psql -c "SELECT * FROM person;" -A -U postgres -d postgre -h localhost

# オプション「-c, --command / -A, --no-align」については、以下のサイトを参照

https://www.dbonline.jp/postgresql/connect/index1.html

2)データベース表示

\d;

【補足】DB作成

CREATE DATABASE name WITH ENCODING=UTF8

3)テーブル定義表示

¥d <table_name> で表示

https://www.dbonline.jp/postgresql/table/index8.html

4)テーブル一覧表示

\dt;

5)データ表示

SELECT * FROM [テーブル名]

SELECT表示をやめる場合(コマンドに戻す)

*  「q」キー
でコマンド入力に戻る

SELECT表示を読み易くする

* 以下のサイトが参考になった

https://qiita.com/iwot@github/items/5ad785e7181654090d7a

 psql -U postgres -d sample_db -h localhost

\x

sample_db=# SELECT * FROM users;
user_id    | 1
user_name  | Mike
created_at | 2019-12-19 21:50:21.3885
-----------+---------------------------
user_id    | 2
user_name  | Tom
created_at | 2019-12-19 21:50:21.3885
-----------+---------------------------
... 略 ...

6)SQLファイル実行

# \i [sql file];
\i ddl.sql;

7)切断 (Quit)

\q;

関連記事

PostgreSQL ~ 基礎知識編 ~
https://dk521123.hatenablog.com/entry/2014/03/08/000100
psqlCSV出力する
https://dk521123.hatenablog.com/entry/2020/02/08/001155
psql で 変数 / 定数を使う
https://dk521123.hatenablog.com/entry/2020/01/23/223756
ファイルからSQL文を一括で実行するには ~pdqlコマンドの利用~
https://dk521123.hatenablog.com/entry/2014/09/11/002003
psql コマンドでファイル実行した際に引数を渡すには
https://dk521123.hatenablog.com/entry/2021/08/01/000000
PostgreSQLのDBをエクスポート/インポートするスクリプト
https://dk521123.hatenablog.com/entry/2018/03/02/232623