PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Befehlszeilenargumente an SQL übergeben (Postgres)

Verwenden Sie die Variablen-Interpolationsfunktion in psql.

Wenn Sie -v variable1=value1 angeben oder --set variable1=value1 Parameter auf der Befehlszeile, dann :variable1 in der SQL-Datei wird durch den entsprechenden Textwert ersetzt.

Hinweis:Verwenden Sie Standard-SQL-Strings in Anführungszeichen, wenn Sie Anführungszeichen, Leerzeichen usw. benötigen.

Beispiel:

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