psql - écrire une requête et la requête la sortie vers un fichier

Dans postgresql 9.3.1, de manière interactive lors de l'élaboration d'une requête à l'aide de la psql de commande, le résultat final est parfois d'écrire les résultats de la requête dans un fichier:

boron.production=> \o /tmp/output
boron.production=> select 1;
boron.production=> \o
boron.production=> \q
$ cat /tmp/output
?column? 
----------
        1
(1 row)

Cela fonctionne bien. Mais comment puis-je obtenir le requête elle-même à être écrite dans le fichier avec les résultats de la requête?

J'ai essayé de donner psql la --echo-queries commutateur:

   -e, --echo-queries
       Copy all SQL commands sent to the server to standard output as well.
       This is equivalent to setting the variable ECHO to queries.

Mais ce sont toujours des échos sur la sortie standard stdout, de ne pas le fichier que j'ai donné avec le \o commande.

J'ai essayé de la --echo-all interrupteur, mais il ne semble pas que l'écho interactif d'entrée.

L'aide de la commande d'édition, je peux répéter la requête avec \qecho en face d'elle. Qui fonctionne, mais c'est fastidieux.

Est-il possible de direct interactif psql session d'écrire à la fois la requête et le résultat de la requête dans un fichier?

\o sorties de la requête pour le fichier de sortie... je ne suis pas au courant de la façon de le faire. Vous pouvez juste mettre du texte dans la sortie à l'aide d' \qecho... ou vous pouvez exécuter le SQL dans le lot - utilisation de redirections. Ensuite, le -e du travail.

OriginalL'auteur Wayne Conrad | 2013-12-06

Leave a Reply

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *