Supprimer L'en-tête de colonne dans le fichier texte de sortie
Je veux créer un fichier plat (fichier texte) de ma requête à partir D'Oracle SQL Developer.
J'ai créé avec succès le fichier texte en utilisant SPOOL, à travers un fichier texte de script, mais je veux supprimer l'en-tête de chaque colonne dans ma sortie.
Je reçois cette sortie:
Header000001 Header000002 ------------ ------------ Adetail1 Bdetail1 Adetail2 Bdetail2 Adetail3 Bdetail3
Mais, je veux obtenir cette sortie:
Adetail1Bdetail1 Adetail2Bdetail2 Adetail3Bdetail3
J'ai déjà essayé la commande "définir la position off", mais un message dit:
"SQLPLUS COMMAND Skipped: set heading off".
Ce sont les entrées que j'ai émises:
spool on;
spool C:SQLFilesPSB_ATMLKP.txt;
set newpage 0;
set echo off;
set feedback off;
set heading off;
select terminal_number, terminal_name from terminal_table;
spool off;
2 réponses
Commande SQLPLUS ignorée: définir le cap hors
Ce message est probablement parce que vous ne l'exécutez pas via SQL*Plus
, mais un outil basé sur une interface graphique. Vous utilisez la commande SQLPlus dans SQL Developer. Toutes les commandes SQL*Plus ne sont pas garanties pour fonctionner avec SQL Developer .
Je vous suggère d'exécuter le script dans SQLPlus et vous ne verriez aucun problème.
Vous avez besoin:
SET HEADING OFF
Cela n'inclut pas les en-têtes de colonne dans sortie.
Alternativement, vous pouvez également faire ceci:
SET PAGESIZE 0
Mise à JOUR
Testé dans SQL Developer Version 3.2.20.10:
spool ON
spool D:\test.txt
SET heading OFF
SELECT ename FROM emp;
spool off
Le fichier Spool a été créé sans problème:
> set heading OFF
> SELECT ename FROM emp
SMITH
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING
TURNER
ADAMS
JAMES
FORD
MILLER
14 rows selected
Ajouter:
set underline off
Au début du script SQL.
Dans mes scripts SQL, j'ai:
SET TERMOUT OFF
set colsep |
set pagesize 0
set trimspool on
set pagesize 0 embedded on
SET heading on
SET UNDERLINE OFF
spool file_path
-- your SQL here
spool off
Voir ce livre pour référence.