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

 Oracle Discussion :

Inclure du SQL dans une fonction?


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de crashtib
    Homme Profil pro
    Support technico-fonctionnel
    Inscrit en
    Avril 2009
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Support technico-fonctionnel
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2009
    Messages : 221
    Par défaut Inclure du SQL dans une fonction?
    Bonjour,

    j'essaie de faire passer une fonction simple SELECT TO_CHAR(sysdate,'HH24MI') FROM DUAL dans une fonction qui ouvre/crée un fichier en append. Voici la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fid_trace:=sys.utl_file.fopen("."||'/', 'SME.R.ITHY.CODE_APPLI.'||region||'.D'||SELECT TO_CHAR(sysdate,'YYMMDD') FROM DUAL||'.H'||SELECT TO_CHAR(sysdate,'HH24MI') FROM DUAL||extension_fichier_trace,'a');
    La fonction prend en paramètres le chemin du fichier à ouvrir, le nom du fichier et le mode d'ouverture.

    Ma question est : pourquoi l'ide (toad) me retourne-t-il le message d'erreur suivant :

    PLS-00103: Encountered the symbol "SELECT" when expecting one of the following:

    ( - + case mod new null <an identifier>
    <a double-quoted delimited-identifier> <a bind variable> avg
    count current max min prior sql stddev sum variance execute

    Lorsque je retire la requête sql ça marche... comment trouver la date alors?

    merci

  2. #2
    Membre confirmé Avatar de crashtib
    Homme Profil pro
    Support technico-fonctionnel
    Inscrit en
    Avril 2009
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Support technico-fonctionnel
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2009
    Messages : 221
    Par défaut
    finalement, quand on cherche... au moins j'aurai appris qu'on ne peut pas inclure une requête comme ça n'importe où.

    Donc, inclure le select avant, et assigner à une variable temp intermédiaire à l'aide de INTO.

    en espérant que cela serve à quelqu'un dautre...

    bonne journée à tous

  3. #3
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Ça dépend, sysdate étant une fonction système vous pouvez directement l'utiliser sans sous-requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    fid_trace := sys.utl_file.fopen (
                      "." || '/',
                      'SME.R.ITHY.CODE_APPLI.' || region ||
                      to_char(sysdate, '".D"YYMMDD".H"hh24mi') ||
                      extension_fichier_trace,
                      'a'           );

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

Discussions similaires

  1. [PHP 5.0] Exécuter une requête SQL dans une fonction Javascript
    Par PrinceMaster77 dans le forum Langage
    Réponses: 13
    Dernier message: 08/07/2011, 04h53
  2. Requete sql dans une fonction
    Par xess91 dans le forum Langage
    Réponses: 2
    Dernier message: 19/04/2009, 19h29
  3. erreur dans une requête sql dans une fonction php
    Par frboyer dans le forum Langage
    Réponses: 3
    Dernier message: 07/04/2009, 13h37
  4. Plusieurs requêtes T-SQL dans une fonction
    Par ellix86 dans le forum Développement
    Réponses: 3
    Dernier message: 26/02/2009, 16h48
  5. Mettre une requete SQL dans une fonction
    Par yenna dans le forum ASP
    Réponses: 3
    Dernier message: 21/06/2007, 10h21

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