Saltar al contenido

Usar una variable de entorno en un script PSQL

Solución:

Puede almacenar el resultado de un comando de shell dentro de un psql variable como esta:

set afile `echo "$outputdir/a.csv"`
COPY (SELECT * FROM a) TO :'afile';

Otra solución (mejor en mi opinión) es usar solo psql variables, vea esta respuesta mía sobre las variables psql, que es similar a su ejemplo. Un ejemplo para su caso sería:

set outputdir '/path/to/output'
set afile :outputdir '/a.csv'
COPY (SELECT * FROM a) TO :'afile';

Tenga en cuenta que, en el ejemplo, debe establecer la variable dentro del archivo de secuencia de comandos, pero puede omitir la primera línea si la establece cuando llama psql:

psql --set=outputdir="$outputdir" <conn parameters> -f /path/to/yourscript.sql
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *