Précédent   Forum des professionnels en informatique > Bases de données > Oracle
Oracle Forum Oracle : le serveur, les outils, ... Voir F.A.Q Oracle Tutoriels Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/05/2007, 14h58   #1
Membre à l'essai
 
Inscription : mars 2002
Messages : 76
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 76
Points : 22
Points : 22
Envoyer un message via AIM à maxvador
Par défaut formatage en sortie avec spool

Bonjour,

J'arrive bien à faire un spool de ma table avec une petite requete.
Voici mon script:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SET echo off ver off feed off pages 0
SET linesize 200
SET colsep "|"
SET trimspool ON
SET pagesize 0
SET termout off
SET feedback off
SET tab off
SET heading off
Define accdate=&&1
spool &2
SELECT * FROM prrt WHERE prrt_dateacnt=&accdate AND prrt_tran IN ('RERE', 'RERD');
 
spool off
exit;
Et voici ma sortie:
Code :
1
2
3
709031027720027|RERE|         0|            2|           27|            0|       152|     20070522|         1251|        21|     20070522|     20070522|                9|
        0|EUR
..........
J'ai pas tous mis car il y en a une tartine. Le soucis c'est que les champs ne sont pas concaténés les un aux autres.
Je suis "obligé" de mettre * car il y a une centaine de colonne dans ma table et que je veux pas faire une requete toute crade et qui va me prendre du temps à ecrire.
__________________
Tout probleme a une solution.
maxvador est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 15h41   #2
Membre actif
 
Homme Bertrand
Administrateur de base de données
Inscription : mai 2007
Messages : 126
Détails du profil
Informations personnelles :
Nom : Homme Bertrand
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Conseil

Informations forums :
Inscription : mai 2007
Messages : 126
Points : 159
Points : 159
Bonjour,

Soit tu utilises un client sql qui te permet une sortie large, et tu pourras selectionner les colonnes ensuite.

Sinon pour concatener les champs il faut
Code :
1
2
 
SELECT a||' '||b||' '|| ..;
Ce n'est pas trés long à écrire, il faut le générer à partir des tables systémes,
et la requête ne sera pas crade !

Code :
1
2
3
4
 
 
SELECT column_name FROM user_cons_columns 
WHERE table_name = ...
A compléter

Cdt
deadoralive est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2007, 11h49   #3
Membre à l'essai
 
Inscription : mars 2002
Messages : 76
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 76
Points : 22
Points : 22
Envoyer un message via AIM à maxvador
Ok donc il n'y a pas d'autre solution.
Ca n'a pas été simple mais j'ai écrit la requete qui génère ma requete à executer.
Merci
__________________
Tout probleme a une solution.
maxvador est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h43.


 
 
 
 
Partenaires

Hébergement Web