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

PL/SQL Oracle Discussion :

Mettre le nombre de lignes d'une table dans le titre avec spool


Sujet :

PL/SQL Oracle

  1. #1
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 85
    Points : 46
    Points
    46
    Par défaut Mettre le nombre de lignes d'une table dans le titre avec spool
    Bonjour,
    En fait, je n'arrive pas à mettre le nombre de lignes existantes dans une table dans le titre d'un fichier spool, je vous envoie le code tel que je veux mettre ce nombre. J'ai essayé plusieurs choses, à mettre ce count(*) dans une variable avec into mais ça ne marche pas donc je ne sia s pas quoi faire.

    Merci de votre aide

    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
    SET linesize 2000
    SET feedback off
    SET FLUSH off
    SET heading off
    SET headsep off
    SET timing off
    SET pagesize 0
    SET termout off
    SET trimspool ON
    SET verify off
    SET wrap ON
    SET pause off
     
    COLUMN l_file new_value l_file
    COLUMN count(*)  new_value count(*)
    SELECT count(*) FROM tasc WHERE date > ‘01/01/2007AND date < sysdate;
    SELECT 'D:\extraction'||'extraction_'||'&count(*)'||'_'||to_char( sysdate , 'YYYYMMDD' )|| '.csv' l_file FROM dual;
    Spool &l_file
    --ici requète 
     
    spool off
    /

  2. #2
    McM
    McM est déconnecté
    Expert éminent

    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
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    aliase le count(*) comme tu l'as fait pour le l_file
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  3. #3
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 85
    Points : 46
    Points
    46
    Par défaut
    Bonjour,
    Merci de m'avoir répondu, en fait je n'ai pas bien compris, moi je voulais tout mettre dans l_file qui sera mon titre, je ne sais pas si tu me propose de définir count (*) de la même façon après je ne sais pas les unir, est ce que vous pouvez m'éclaircir un peu plus STP


    Citation Envoyé par McM Voir le message
    aliase le count(*) comme tu l'as fait pour le l_file

  4. #4
    McM
    McM est déconnecté
    Expert éminent

    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
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Je peux pas tester chez moi.
    Déjà Column count(*) devrait pas marcher.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    COLUMN nb  new_value nb
    SELECT count(*) nb FROM tasc WHERE date > ‘01/01/2007AND date < sysdate;
    Ensuite récupérer cette variable dans un select je sais pas si ça marche comme ça.

    Tu peux le faire de 2 solutions :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    COLUMN l_file new_value l_file
    COLUMN nb  new_value nb
    SELECT count(*) nb FROM tasc WHERE date > ‘01/01/2007AND date < sysdate;
    SELECT to_char( sysdate , 'YYYYMMDD' )|| '.csv' l_file FROM dual;
    Spool "D:\extractionextraction_".&nb."_".&l_file
    (Y'a surement des problèmes avec les . et les ", faut tester)

    Ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    COLUMN l_file new_value l_file
    SELECT 'D:\extraction'||'extraction_'|| count(*)  ||'_'||to_char( sysdate , 'YYYYMMDD' )|| '.csv' l_file
    FROM tasc WHERE date > ‘01/01/2007AND date < sysdate;
    Spool &l_file
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  5. #5
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 85
    Points : 46
    Points
    46
    Par défaut
    Merci beaucoup,

    Je vais tester ceci demain dans l'entreprise et je vais vous tenir au courant merci beaucoup.

    Citation Envoyé par McM Voir le message
    Je peux pas tester chez moi.
    Déjà Column count(*) devrait pas marcher.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    COLUMN nb  new_value nb
    SELECT count(*) nb FROM tasc WHERE date > ‘01/01/2007AND date < sysdate;
    Ensuite récupérer cette variable dans un select je sais pas si ça marche comme ça.

    Tu peux le faire de 2 solutions :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    COLUMN l_file new_value l_file
    COLUMN nb  new_value nb
    SELECT count(*) nb FROM tasc WHERE date > ‘01/01/2007AND date < sysdate;
    SELECT to_char( sysdate , 'YYYYMMDD' )|| '.csv' l_file FROM dual;
    Spool "D:\extractionextraction_".&nb."_".&l_file
    (Y'a surement des problèmes avec les . et les ", faut tester)

    Ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    COLUMN l_file new_value l_file
    SELECT 'D:\extraction'||'extraction_'|| count(*)  ||'_'||to_char( sysdate , 'YYYYMMDD' )|| '.csv' l_file
    FROM tasc WHERE date > ‘01/01/2007AND date < sysdate;
    Spool &l_file

  6. #6
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 85
    Points : 46
    Points
    46
    Par défaut
    Je vous remercie de votre aide, c'est bon j'ai pu mettre le titre du fichier que je veux. Je l'ai testé et ça marche.Je vous remercie, je vous montre le code que j'ai fait pour mettre en place le titre du fichier en suivant votre aide. Le code pour le titre je l'ai mis ci-dessous si quelqu'un aura un titre à faire par exemple.

    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
     
    Set linesize 2000
    set feedback off
    set flush off
    set heading off
    set headsep off
    set timing off
    set pagesize 0
    set recsep off
    set termout off
    set trimspool on
    set verify off
    set wrap on
    set pause off
     
    COLUMN SERVER new_value SERVER
     
    SELECT  distinct SERVER
    FROM log_server
    ;
    COLUMN l_file new_value l_file
    COLUMN nb  new_value nb
    SELECT count(*) nb FROM log_user
    WHERE LOG_DATE BETWEEN sysdate-30 AND sysdate;
    SELECT 'D:\tal\'||'&SERVER'||'_'||to_char( sysdate , 'YYYYMMDD' )||'_'||'&nb'|| '.csv' l_file FROM dual;
    Spool &l_file
     
    SELECT  /* ici j'ai ma requète */;
     
    spool off
    /

    Citation Envoyé par hichcasa Voir le message
    Merci beaucoup,

    Je vais tester ceci demain dans l'entreprise et je vais vous tenir au courant merci beaucoup.

  7. #7
    Membre confirmé Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Points : 565
    Points
    565
    Par défaut
    Un p'tit clic sur Résolu alors?
    C'est pas parce que ca marche que c'est bon!!
    Pensez au bouton "Résolu"
    Je ne réponds pas en privé aux questions

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

Discussions similaires

  1. Afficher nombre de lignes d'une table située sur une autre feuille
    Par nemone dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 08/12/2006, 16h28
  2. Réponses: 6
    Dernier message: 21/04/2006, 11h22
  3. Mettre a jour plusieurs lignes d'une table
    Par Tartenpion dans le forum Langage SQL
    Réponses: 4
    Dernier message: 17/12/2005, 18h50
  4. nombre de lignes d'une table de ma BD
    Par manikou dans le forum MFC
    Réponses: 4
    Dernier message: 06/07/2005, 10h04
  5. determination le nombre de ligne d'une table
    Par picoti2 dans le forum Bases de données
    Réponses: 2
    Dernier message: 18/03/2004, 09h25

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