Použijte funkci variabilní interpolace v psql.
Pokud zadáte -v variable1=value1
nebo --set variable1=value1
parametr na příkazovém řádku a poté :variable1
v sql souboru bude nahrazena odpovídající textovou hodnotou.
Poznámka:Pokud potřebujete uvozovky, mezery a podobně, použijte standardní SQL řetězce v uvozovkách.
Příklad:
echo "SELECT :arg1 FROM :arg2 LIMIT 10;" > script.sql
psql mydatabase -v arg1=relname -v arg2=pg_class < script.sql
psql mydatabase -v arg1="'some string' as label" -v arg2=pg_namespace < script.sql