Postgresql .batから.sqlを実行
■ バッチファイルからsqlを実行する
ここでは、postgresデータベースのirisテーブル、carsテーブルに格納されているデータをcsv形式で出力する。
・Sample1.bat
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
@echo off
rem PostgreSQLの場所を指定
set PGPATH=c:\"Program Files"\PostgreSQL\9.5\bin\
rem DB接続情報
rem call c:\"Program Files"\PostgreSQL\9.5\pg_env.bat
set USERID=postgres
set DBNAME=postgres
set HOST=localhost
set PORT=5432
rem ポスグレ接続
%PGPATH%psql -h %HOST% -p %PORT% -U %USERID% -d %DBNAME% -f C:/Users/XXXXX/Desktop/psql/csvout1.sql
exit
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
・csvout1.sql
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
\COPY (select * from cars) TO 'C:\Users\XXXXX\Desktop\psql\out\cars.csv' (FORMAT csv);
\COPY (select * from iris) TO 'C:\Users\XXXXX\Desktop\psql\out\iris.csv' (FORMAT csv);
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
■実行画面
Sample1.batを実行すると、パスワードが聞かれる。
おまけ
■postgres接続後にSQLを実行する場合