IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

formatage en sortie avec spool


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2002
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 82
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    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
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    select column_name from user_cons_columns 
    where table_name = ...
    A compléter

    Cdt

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2002
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 82
    Par défaut
    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

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. formatage de données avec sprintf
    Par hunter001 dans le forum C
    Réponses: 10
    Dernier message: 18/08/2006, 09h05
  2. Passage à la ligne indésirable avec SPOOL
    Par aeled dans le forum Oracle
    Réponses: 5
    Dernier message: 11/08/2006, 14h03
  3. [PHP-JS] formatage de texte avec php
    Par djambo1er dans le forum Langage
    Réponses: 2
    Dernier message: 14/06/2006, 11h22
  4. Formatage d'entiers avec un signe
    Par chtom dans le forum Langage
    Réponses: 5
    Dernier message: 21/09/2005, 21h59
  5. C++, intercepter les sorties avec les raw sockets
    Par ThibG dans le forum Développement
    Réponses: 6
    Dernier message: 08/08/2005, 11h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo