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 :

comment augmenter la taille de line dans dbms_output


Sujet :

SQL Oracle

  1. #1
    Membre averti
    Inscrit en
    Décembre 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 31
    Par défaut comment augmenter la taille de line dans dbms_output
    slt.
    je voudrais afficher une ligne à l'écran de sa taille 500
    une erreur s'affiche :
    ORA-20000: ORU-10028: line length overflow, limit of 255 bytes per line

    est ce qu'il y a moyen d'augmenter sa taille.
    merci de me répondre

  2. #2
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut
    Pour augmenter la taille de la ligne :
    set linesize 500
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

  3. #3
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Non, la sortie de DBMS_OUTPUT est toujours limitée à 255

    Le nb de ligne lui est paramétrable (dbms_output.set(XXX))

  4. #4
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    A partir de la 10gR2, le nombre de ligne ainsi que leur longueur n'ont plus de limite.
    En attendant, vous pouvez lire ceci:
    http://oracle.developpez.com/sources...oppement#TRACE

  5. #5
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut
    Non, la sortie de DBMS_OUTPUT est toujours limitée à 255
    Ouh la oui, désolé pour cette erreur..

    C'est au moins un défault que n'a pas le package UTL_FILE
    Le seul problème c'est qu'UTL_FILE n'affiche rien à l'écran.
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

  6. #6
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    Citation Envoyé par SheikYerbouti
    A partir de la 10gR2, le nombre de ligne ainsi que leur longueur n'ont plus de limite.
    quasi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    
    SQL> set serverout on size unlimited 
    SQL> exec dbms_output.put_line(lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x'))
    BEGIN dbms_output.put_line(lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')||lpad('x',4000,'x')); END;
    
    *
    ERROR at line 1:
    ORA-20000: ORU-10028: line length overflow, limit of 32767 bytes per line
    ORA-06512: at "SYS.DBMS_OUTPUT", line 32
    ORA-06512: at "SYS.DBMS_OUTPUT", line 91
    ORA-06512: at "SYS.DBMS_OUTPUT", line 112
    ORA-06512: at line 1

  7. #7
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    Citation Envoyé par kalyparker
    C'est au moins un défault que n'a pas le package UTL_FILE
    255 non, 32767 oui
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    SQL> declare  f utl_file.file_type;begin f:=utl_file.fopen('TMP','xxx','W',32768); end;
      2  /
    declare  f utl_file.file_type;begin f:=utl_file.fopen('TMP','xxx','W',32768); end;
    *
    ERROR at line 1:
    ORA-29287: invalid maximum line size
    ORA-06512: at "SYS.UTL_FILE", line 33
    ORA-06512: at "SYS.UTL_FILE", line 436
    ORA-06512: at line 1

  8. #8
    Membre averti
    Inscrit en
    Décembre 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 31
    Par défaut
    SERVEROUT ne marche pas quand je l'écris dans un package pl/sql.
    comment faire

  9. #9
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    SET SERVEROUT[PUT] est une commande reconnue par SQL*Plus mais n'est pas une instruction SQL ou PL/SQL: on ne peut pas l'utiliser en PL/SQL.

  10. #10
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    Citation Envoyé par lifeisgood
    SERVEROUT ne marche pas quand je l'écris dans un package pl/sql.
    comment faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    dbms_output.enable(NULL);
    en 10gR2, mais il ne s'agit là que de la taille maximum de l'output (unlimited), pas de la taille de la ligne (fixe, 255 en 10gR1 et avant, 32767 en 10gR2)

  11. #11
    Membre averti
    Inscrit en
    Décembre 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 31
    Par défaut
    donc en gros, je ne peux pas augmenter la taille de la ligne.
    il faudra attendre d'avoir la 10g .

  12. #12
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Lisez donc l'article que je pointe dans ma première réponse...

  13. #13
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    SQL> begin
      2  dbms_output.enable(10000);
      3  f_trace(lpad('x',2000,'x'));
      4  end;
      5  /
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    Procédure PL/SQL terminée avec succès.
    SQL>

  14. #14
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    une approche est de tout écrire dans une table, et ensuite de faire un select

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    create global temporary table texte(texte clob);
     
    begin
    insert into texte values ('.... long texte ...');
    end;
    /
     
    select texte from texte;
    delete texte;

Discussions similaires

  1. Réponses: 5
    Dernier message: 19/05/2009, 20h28
  2. comment augmenter la taille d'envois message!
    Par starsat4200 dans le forum Outlook
    Réponses: 4
    Dernier message: 26/09/2007, 15h24
  3. comment augmenter la taille d'une partition LINUX RED HAT ?
    Par hadid dans le forum Administration système
    Réponses: 4
    Dernier message: 21/09/2007, 16h34
  4. [GD] Comment augmenter la taille de la police qui reste désespérément à 8 ?
    Par Shandler dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 04/07/2007, 19h46
  5. comment augmenter la taille d'un tableau ?
    Par salseropom dans le forum C
    Réponses: 5
    Dernier message: 16/12/2005, 12h47

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