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*Plus Oracle Discussion :

Fichier CSV nom dynamique


Sujet :

Sql*Plus Oracle

  1. #1
    Membre habitué Avatar de Orakle
    Homme Profil pro
    Responsable Informatique
    Inscrit en
    Mars 2004
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Responsable Informatique
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2004
    Messages : 204
    Points : 154
    Points
    154
    Par défaut Fichier CSV nom dynamique
    Bonjour,

    Pour ma part je ne suis pas très calé non plus en commande SQL Plus mais j'ai des fichiers.sql existants lancés par des .bat que je souhaiterai améliorer. (et qui créent des fichiers csv aussi avec la commande spool)

    En fait j'aimerai leur passer un paramètre de date de manière automatque.

    Date du jour -1 ou moins xx j'ai compris en cherchant qu'il fallait lui dire quelque chose comme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    spool 
    select...
    ...
    and trunc(MaDate)= trunc(SYSDATE-1)
    jusque là ça va. Mais j'aimerai également inclure cette date dans mon nom de fichier sous forme suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    spool 'C:\MonDossier\MonFichier_190424.csv'
    Je pourrais peut-être lui passer (SYSDATE-1) mais je n'y arrive pas avec la syntaxe

    Merci de votre aide

  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
    Bonjour,

    Il faut déclarer une variable, l'affecter en SQL pour l'utiliser ensuite

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    column nomfic new_val nomfic
    select 'MCM_' || to_char(sysdate-1, 'yyyymmdd' ) nomfic from dual;
     
    SPOOL &nomfic
    select * from dual;
     
    spool off

  3. #3
    Membre habitué Avatar de Orakle
    Homme Profil pro
    Responsable Informatique
    Inscrit en
    Mars 2004
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Responsable Informatique
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2004
    Messages : 204
    Points : 154
    Points
    154
    Par défaut
    Merci McM,

    oui c'est cela, mais cela me crée un fichier LST, possible de lui ajouter la bonne extension (csv) ?

    j'ai essayé

    SPOOL &nomfic || '.csv'
    ou
    SPOOL &nomfic '.csv'

    Mais rien n'y fait

  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
    La spécificité sqlplus : Essaye avec ..csv

    ou alors tu le fais dans le select de la variable (sans double .)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select 'MCM_' || to_char(sysdate-1, 'yyyymmdd') ||'.csv' nomfic from dual;

  5. #5
    Membre habitué Avatar de Orakle
    Homme Profil pro
    Responsable Informatique
    Inscrit en
    Mars 2004
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Responsable Informatique
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2004
    Messages : 204
    Points : 154
    Points
    154
    Par défaut
    fonctionne parfaitement!! parfois les choses simples...

    j'avais tenté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select 'MCM_' || to_char(sysdate-1, 'yyyymmdd') ||'.csv' nomfic from dual;
    Mais j'avais une erreur

    Merci pour votre aide et votre réactivité.

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

Discussions similaires

  1. [EG] Exporter un fichier CSV avec un nom dynamique
    Par xav2229 dans le forum Outils BI
    Réponses: 0
    Dernier message: 04/01/2012, 15h33
  2. Nom du fichier log écrit dynamiquement
    Par lolo_irie dans le forum Apache
    Réponses: 2
    Dernier message: 06/07/2009, 11h08
  3. Récupérer le nom d'un fichier csv
    Par meridien dans le forum Développement de jobs
    Réponses: 1
    Dernier message: 21/04/2009, 13h25
  4. Creation dynamique d'un fichier csv
    Par BigBenFr dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 24/07/2007, 15h53
  5. Tableau dynamique et fichier CSV
    Par scarecrow1 dans le forum Delphi
    Réponses: 25
    Dernier message: 23/02/2007, 15h26

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