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 :

[PL/SQL] ORDER BY 'param1'


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Novembre 2005
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 9
    Par défaut [PL/SQL] ORDER BY 'param1'
    Bonjour à tous,

    Voila un petit problème qui m'amène beaucoup de soucis

    Je récupère dans une fonction PLSQL des paramètres VARCHAR2 : param1, param2...
    Cependant, ces paramètres semblent être considérés uniquement comme des chaines de caractères, et ne sont donc pas utilisables directement dans la requète.

    ne marche donc pas

    non plus

    Je souhaiterai éviter l'utilisation de EXECUTE IMMEDIATE.

    La moindre petite piste est la bienvenue, je bloque completement.
    Merci d'avance à quiconque pourra m'aider

  2. #2
    Membre Expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Par défaut
    Citation Envoyé par Sloneczko
    Je souhaiterai éviter l'utilisation de EXECUTE IMMEDIATE.
    Je ne vois pourtant pas d'autres solutions, à part utiliser le package dbms_sql mais cela revient pratiquement au même...

  3. #3
    Membre habitué
    Inscrit en
    Novembre 2005
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 9
    Par défaut
    Si je souhaite éviter EXECUTE IMMEDIATE, c'est parsque j'utilise dans mes requètes un curseur variable :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    OPEN leCurseur FOR
    SELECT tck_id
    FROM ticket
    ORDER BY param1 ;
     
    RETURN leCurseur ;
    EXECUTE IMMEDIATE ne semble pas vouloir de ce type de requète.
    Si toutefois quelqu'un connait une solution, je suis preneur aussi

  4. #4
    Membre Expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Par défaut
    Il eût été judicieux de poster ton code dès le départ

    As-tu essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    OPEN leCurseur FOR
    'SELECT tck_id FROM ticket ORDER BY ' || param1 ;
    RETURN leCurseur ;

  5. #5
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    éventuellement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    order by decode(:param1,'EMPNO',empno,'ENAME',ename)

  6. #6
    Membre habitué
    Inscrit en
    Novembre 2005
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 9
    Par défaut
    La méthode de plaineR marche, merci beaucoup pour m'avoir débloqué

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

Discussions similaires

  1. [SQL] Order by et Union (?)
    Par Procto dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 15/02/2010, 09h23
  2. SQL : Order by 0
    Par Arnaud F. dans le forum Adaptive Server Enterprise
    Réponses: 6
    Dernier message: 15/12/2009, 23h05
  3. [SS 2K5] Transact-SQL : ORDER BY et CURSOR
    Par SebastienM dans le forum Langage SQL
    Réponses: 1
    Dernier message: 05/06/2009, 09h40
  4. [SQL] Order by particulier
    Par -Ju- dans le forum SQL
    Réponses: 2
    Dernier message: 29/02/2008, 15h16
  5. [FB] Bde vs FibPlus Probleme SQL (Order by et Union)
    Par SergioMaster dans le forum Bases de données
    Réponses: 2
    Dernier message: 18/06/2007, 13h41

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