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 :

Renvoyer le Résultat d'un select dans une variable


Sujet :

PL/SQL Oracle

  1. #1
    Membre actif Avatar de Pittouti
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Avril 2012
    Messages
    246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant SAP
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2012
    Messages : 246
    Points : 257
    Points
    257
    Par défaut Renvoyer le Résultat d'un select dans une variable
    Bonjour à Tous,

    Pour commencer je débute sur PL/SQL, j'ai essayé de regarder pas mal de post mais sans résultat et ça ne fonctionne pas !!

    je compte sur votre aide pour débloquer la situation.

    Pour Info: j'utilise le PL/SQL dans APEX.

    ma demande : si le mois est choisi j'affiche le résult sinon il me prend les valeurs du mois encours

    ci-dessous mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    DECLARE 
    Q varchar(4000);
    BEGIN
    IF :P_MOIS is null then
        select * into Q
        from chiffre_cle
        where chiffre_cle.Mois= to_char(sysdate,'mm-yyyy');
    ELSE
        select * into Q
        from chiffre_cle
        where (chiffre_cle.Mois= :P_MOIS);
    end IF;
    END;
    return Q

    Merci d'avance
    ________________________________________________________________________________________

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.
    Merci, c'est toujours sympa de recevoir des +1 de votre part

  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,

    La portée de ta variable Q reste dans le DECLARE BEGIN END.. Donc au niveau de ton return Q n'est plus connue.
    Le return doit donc être avant le END
    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 actif Avatar de Pittouti
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Avril 2012
    Messages
    246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant SAP
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2012
    Messages : 246
    Points : 257
    Points
    257
    Par défaut
    Bonjour McM,

    ça ne marche toujours pas
    j'ai ce message

    ORA-06550: Ligne 13, colonne 1 :
    PLS-00103: Symbole "END" rencontré à la place d'un des symboles suivants :

    . ( * @ % & = - + ; < / > at in is mod remainder not rem
    <exposant (**)> <> or != or ~= >= <= <> and or like like2
    like4 likec between || multiset member submultiset
    Symbole ";" a été substitué à "END" pour continuer.
    ORA-06512: à "SYS.WWV_DBMS_SQL_APEX_210200", ligne 673
    ORA-06512: à "SYS.DBMS_SYS_SQL", ligne 1658
    ORA-06512: à "SYS.WWV_DBMS_SQL_APEX_210200", ligne 659
    ORA-06512: à "APEX_210200.WWV_FLOW_DYNAMIC_EXEC", ligne 1829
    ________________________________________________________________________________________

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.
    Merci, c'est toujours sympa de recevoir des +1 de votre part

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 137
    Points : 1 917
    Points
    1 917
    Par défaut
    Bonjour,

    S'agit-il de code d'une fonction? Car "return q" c'est pour une fonction. Tu peux simplifier ton code en utilisant NVL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    declare 
      Q varchar(4000);
    begin
     select * into q
     from chiffre_cle
     where chiffre_cle.mois = nvl(:P_MOIS, to_char(sysdate,'mm-yyyy'));
    end;

  5. #5
    Membre actif Avatar de Pittouti
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Avril 2012
    Messages
    246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant SAP
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2012
    Messages : 246
    Points : 257
    Points
    257
    Par défaut
    ça marche nickel
    merci infiniment
    ________________________________________________________________________________________

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.
    Merci, c'est toujours sympa de recevoir des +1 de votre part

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 18/04/2008, 17h40
  2. résultat d'un select dans une variable
    Par chloro69 dans le forum Informix
    Réponses: 4
    Dernier message: 14/04/2008, 17h56
  3. Réponses: 11
    Dernier message: 18/07/2006, 13h53
  4. récupérer le résultat d'un SELECT dans une variable ?
    Par budhax dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 06/06/2006, 10h24
  5. [Sybase] résultat d'un select dans une variable
    Par stoz dans le forum Sybase
    Réponses: 2
    Dernier message: 14/09/2004, 14h28

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