Utilisation de sqlplus.exe Je cherche un moyen d'écrire une sortie sqlplus dans un fichier.
Est-ce que de toute façon je peux le faire, actuellement la sortie est écrite uniquement sur la console.
Vous pouvez utiliser la commande SPOOL pour écrire les informations dans un fichier.
Avant d'exécuter une commande, tapez ce qui suit:
SPOOL <output file path>
Toutes les commandes suivantes seront écrites dans le fichier de sortie.
Pour arrêter le type d'écriture en sortie de commande
SPOOL OFF
Notez également que la sortie SPOOL
est régie par quelques paramètres SQLPlus:
SET LINESIZE nn
- largeur maximale de la ligne; si la sortie est plus longue, le contenu de chaque ligne de résultat sera renvoyé à la ligne.
SET TRIMSPOOL OFF|ON
- si défini OFF
(valeur par défaut), chaque ligne de sortie sera complétée à LINESIZE
. Si défini ON
, chaque ligne en sortie sera tronquée.
SET PAGESIZE nn
- nombre de lignes à afficher pour chaque répétition de l'en-tête. Si défini à zéro, aucun en-tête n'est généré; juste le détail.
Ce sont les gros problèmes, mais il y en a d'autres à considérer si vous voulez juste la sortie sans tout le bavardage de SQLPlus.
Assurez-vous que vous avez accès au répertoire que vous essayez de spouler. J'ai essayé de spool to root et le fichier n'a pas été créé (par exemple c:\test.txt
). Vous pouvez vérifier où vous spoulez en lançant la commande spool
.
juste pour enregistrer mes propres déductions de tout cela (pour enregistrer la sortie de DBMS_OUTPUT sur le client, à l’aide de sqlplus):