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

SQL Oracle Discussion :

spool et formattage du texte a la sortie


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 28
    Par défaut spool et formattage du texte a la sortie
    bonjour tout le monde , voila j' ai un problème , déjà rencontré par d'autres personnes sur ce forum , mais aucunes des solutions proposé ne me satisfait , c'est pourquoi que je me permet de reposter le message ici.
    voila , je travaille sur oracle 9.2.0.4.0 sous unix
    a travers un script shell j'essaye de générer un fichier csv voila le code
    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
    16
     
    `sqlplus -s ${connect} >> $LOG_FILE << EOF
    SET HEAD OFF
    SET FEEDBACK OFF
    SET TAB OFF
    SET SPACE 0
    SET TRIMSPOOL ON
    SET LINESIZE 10000
    SET COLSEP ';'
    WHENEVER SQLERROR EXIT FAILURE ROLLBACK;
    WHENEVER OSERROR EXIT FAILURE ROLLBACK;
     spool ${EXTRACT_FILE}
     select chmp1,chmp2,chmp3 from matable;
     spool off
     EXIT; 	
    EOF`
    normalement je m'attend a un tel résultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    val1;val2;val3
    val4;val5;val6
    alors que j'obtient ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    val1         ;val2    ;val3
    val4         ;val5    ;val6
    sachant que
    champs1 est un varchar2(50)
    champs2 est un varchar2(20)
    champs3 est un varchar2(20)

    je sais que je peut fixer la longueur des colonne ou plus simple faire un sed sur le fichier pour éliminer les blanc mais je pense qu'il doit y avoir une solution pour obtenir que la longueur de la colonne (lors de l'affichage) prend celle de la valeur sans ajouter des blanc a chaques fois.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2008
    Messages : 75
    Par défaut
    je ne sais pas si cette solution te convient
    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
     
    `sqlplus -s ${connect} >> $LOG_FILE << EOF
    SET HEAD OFF
    SET FEEDBACK OFF
    SET TAB OFF
    SET SPACE 0
    SET TRIMSPOOL ON
    SET LINESIZE 10000
    WHENEVER SQLERROR EXIT FAILURE ROLLBACK;
    WHENEVER OSERROR EXIT FAILURE ROLLBACK;
     spool ${EXTRACT_FILE}
     select chmp1||';'||chmp2||';'||chmp3 from matable;
     spool off
     EXIT; 	
    EOF`

  3. #3
    Membre averti
    Inscrit en
    Janvier 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 28
    Par défaut
    Merci pour ta réponse, cette solution a été déjà proposée ailleurs , mais faute de mieux...........
    merci encore.

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

Discussions similaires

  1. Reports9i texte tronqué sur sortie RTF
    Par bellig dans le forum Reports
    Réponses: 0
    Dernier message: 14/04/2008, 13h59
  2. colorer un texte dans la sortie
    Par hammag dans le forum Langage
    Réponses: 7
    Dernier message: 23/09/2007, 06h26
  3. Formattage de texte
    Par ChPr dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 25/05/2007, 11h54
  4. Formattage de texte
    Par Le Serval dans le forum Access
    Réponses: 15
    Dernier message: 28/06/2006, 11h14

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