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 :

Problème de récupération du résultat d'une variable [Débutant(e)]


Sujet :

Sql*Plus Oracle

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut Problème de récupération du résultat d'une variable
    Bonjour,

    J'aimerais tout simplement récupérer la date et l'heure dans une variable pour l'utiliser avec la commande spool afin de générer un fichier avec pour nom la date et l'heure contenues dans cette variable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    variable heure varchar2(30)
    define heure = to_char(sysdate,’ddmmyyyyHH24MI’);
    spool \\MonServeur\&heure..csv
    Malheureusement la création du fichier est impossible, le résultat de l'erreur obtenue indique le chemin suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    \\MonServeur\to_char(sysdate,’ddmmyyyyHH24MI’)
    à la place de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    \\MonServeur\150920161513
    J'ai cherché un moment sur internet sans trouver comment récupérer le résultat de la variable et les "" et '' n'ont pas fonctionné non plus.

    Auriez-vous une idée s'il vous plaît ?

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 801
    Points
    30 801
    Par défaut
    La formule to_char(sysdate,’ddmmyyyyHH24MI’); fait appel à des fonctions SQL... qui ne peuvent être exécutées que dans un bloc PL/SQL.
    Essaye avec cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    variable heure varchar2(30)
    begin
      :heure = to_char(sysdate,’ddmmyyyyHH24MI’);
    end;
    spool \\MonServeur\&heure..csv
    Je n'ai pas les moyens de tester mais c'est la piste à suivre.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut
    Utilisez new_value
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Connecté à :
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    With the Real Application Testing option
     
    SQL> column heure new_value spool_file_name
    SQL> Select to_char(sysdate,'ddmmyyyyHH24MI') As heure from dual;
     
    HEURE
    ------------
    150920161653
     
    SQL> def spool_file_name
    DEFINE SPOOL_FILE_NAME = "150920161653" (CHAR)

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 801
    Points
    30 801
    Par défaut
    Merci mnitu,
    J'aurai appris quelque chose aujourd'hui
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2016
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Effectivement cela fonctionne très bien malgré une erreur lors du test du spool en ligne de commande avec pourtant la date et l'heure du spool au bon format.
    Pas de problème dans le script !
    Merci beaucoup à vous 2 !

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 05/11/2014, 14h36
  2. Problème de récupération de texte dans une variable
    Par LeoBeutel dans le forum Cpcdos
    Réponses: 11
    Dernier message: 04/11/2014, 18h41
  3. [Batch] Récupération du résultat dans une variable
    Par mangasource dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 19/06/2014, 20h18
  4. [ZF 1.10] Récupération du résultat d'une requête (léger problème)
    Par kawa67 dans le forum Zend Framework
    Réponses: 17
    Dernier message: 09/06/2010, 11h52
  5. Réponses: 3
    Dernier message: 08/03/2007, 11h45

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