psql コマンドラインまたはバッチ ファイルからパラメーターを渡すこともできます。最初のステートメントは、データベースに接続するために必要な詳細を収集します。
最後のプロンプトは、WHERE 列の IN() 句で使用される制約値を要求します。if 文字列はシングル クォートで囲み、コンマで区切ることを忘れないでください。
@echo off
echo "Test for Passing Params to PGSQL"
SET server=localhost
SET /P server="Server [%server%]: "
SET database=amedatamodel
SET /P database="Database [%database%]: "
SET port=5432
SET /P port="Port [%port%]: "
SET username=postgres
SET /P username="Username [%username%]: "
"C:\Program Files\PostgreSQL\9.0\bin\psql.exe" -h %server% -U %username% -d %database% -p %port% -e -v -f cleanUp.sql
次に、SQL コード ファイルにクリーンアップ SQL、vacuum full を追加します (スペルに注意してください)。これを cleanUp.sql として保存します。
VACUUM FULL;
Windows では、ファイル全体を DOS BATch ファイル (.bat) として保存し、同じディレクトリに cleanUp.sql を保存して、バッチ ファイルを起動します。元のプロンプト スクリプトについて、EnterpriseDB の Dave Page に感謝します。
また、SQL で評価できるパラメーターをスクリプトに追加したい場合は、Norto さんの他の投稿もチェックしてください。投票してください。