PostgreSQL:バッチでSQLを実行する
PostgreSQLをバッチで実行するサンプルです。
SQLを起動するバッチ
(例:PsqlStart.bat ※任意のファイル名に変更してください)
cd %~dp0
rem パスワードを先に設定する
set PGPASSWORD=Password
rem ServerName:サーバー名
rem UserName:ユーザー名
rem DbName:DB名
rem PortNumber:ポート番号
rem script.sql:SQLが書いてあるSQLファイル(任意のファイル名に変更してください)
rem result.txt:SQLの結果が出力されるファイル(任意のファイル名に変更してください)
psql -h ServerName -U UserName -d DbName -p PortNumber -f script.sql -o result.txt
start "" "result.txt"
SQLを記載するファイル
(例:script.sql ※上記バッチファイル内に記載しているファイル名です。)
--sampleのSQL
SELECT now() AS "現在の時間"
上記バッチファイル内に記載しているファイル名「result.txt」にSQLの結果が出力され、「result.txt」が自動起動します。
補足
「psql」で以下のエラーになった場合はPATHが通っていません。
PostgreSQLの実行ファイルを探し、環境変数の「PATH」にセットしてOSを再起動してください。
実行ファイルの場所は「C:\Program Files\PostgreSQL\バージョン名\data」です。
例:バージョン16の場合は「C:\Program Files\PostgreSQL\16\data」です。
'psql' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
この記事が気に入ったらサポートをしてみませんか?