psqlコマンドでファイルのSQLを実行する!PostgreSQL初心者の勉強

2020-08-22

コマンドであらかじめ作成されたSQLファイルを実行することができます。

コマンドでSQLファイルを実行

コマンドの書き方から見ていきます。

コマンド例

psql -h HostName -p PortNumber -U UserName -d DarabeseName -f fileName

「-f」の後ろにファイル名を記入し実行することでファイルの中に書かれたSQL文が実行されます。

データベースへの接続方法は以下にまとめています。

ファイルとディレクトリ

ファイルが一つだけならそのパス書いてもいいかもしれませんが、実行前に「cd」コマンドでディレクトリを移動してから実行するとファイルのパスを書いて実行しなくてすみます。

例 パスを書く場合

psql -h HostName -p PortNumber -U UserName -d DarabeseName -f /user/documents/sql/filename.sql

例 cd

cd /user/documents/sql/

ディレクトリを変更してからpsqlコマンドを実行。

psql -h HostName -p PortNumber -U UserName -d DarabeseName -f filename.sql

ファイルについて

ファイルの拡張子は「.sql」が推奨されています。
(textエディタで作成して拡張子をsqlにして作成しています。)

ファイルの中身の例です。

-- itemテーブルを作成
CREATE TABLE item (
ItemID int ,
ItemName character varying (20)
);

-- テーブルの中に値を挿入。
insert into item values(0001, 'ゼリー'), (0002, 'プリン'), (0003, 'ヨーグルト');

上記のファイルをpsqlコマンドで実行して処理すると以下のようにメッセージがでます。

CREATE TABLE
INSERT 0 3

おわり

作成したテーブルやよく使うSQL文など、バックアップとしてファイルでとっておくと便利ですよね。

ファイルが実行できるようになったら合わせて、実行時に値をセットして使う方法も便利なので読んでみてください。

PostgreSQL, SQL

Posted by Nakamoto