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 :

requete avec colonne parametré en Plsql 9i


Sujet :

PL/SQL Oracle

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 43
    Points
    43
    Par défaut requete avec colonne parametré en Plsql 9i
    Sous oracle9i
    Comment peux-t-on parametrer le nom d'une colonne de selection dans une requete afin de varier les colonnes de selection dans une boucle.

    prodecure p_proc(n number)
    begin

    for i in 1..n loop
    select 'T.col.'||i into val from T;

    end loop;

    end;

  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
    Points : 3 609
    Points
    3 609
    Par défaut
    Fais une recherche sur execute immediate, tu trouveras une foule d'exemples.

  3. #3
    Membre régulier Avatar de Vince7-7
    Homme Profil pro
    Fondateur et dirigeant de la société Oramatica. http://www.oramatica.com
    Inscrit en
    Janvier 2007
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Fondateur et dirigeant de la société Oramatica. http://www.oramatica.com

    Informations forums :
    Inscription : Janvier 2007
    Messages : 125
    Points : 85
    Points
    85
    Par défaut
    Fais un execute immediate.
    EXECUTE IMMEDIATE 'SELECT '|| T_COL||' from table';

  4. #4
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Points : 2 998
    Points
    2 998
    Par défaut
    Bonjour,

    qu'est ce que tu veux obtenir ?

    Quelques choses comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    prodecure p_proc(n number, col varchar2)
    begin
     
    for i in 1..n loop
    execute immediate 'select T.' || col ||' i into val from T';
     
    end loop;
     
    end;

  5. #5
    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
    Points : 3 609
    Points
    3 609
    Par défaut
    Citation Envoyé par kalyparker
    Bonjour,

    qu'est ce que tu veux obtenir ?

    Quelques choses comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    prodecure p_proc(n number, col varchar2)
    begin
     
    for i in 1..n loop
    execute immediate 'select T.' || col ||' i into val from T';
     
    end loop;
     
    end;
    Hum , n'est-ce pas plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    prodecure p_proc(n number, col varchar2)
    begin
     
    for i in 1..n loop
    execute immediate 'select T.col'  || i || ' from T' into val;
     
    end loop;
     
    end;

  6. #6
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Points : 2 998
    Points
    2 998
    Par défaut
    Heureusement que tu est là plaineR,
    sinon qu'est ce que je raconterais comme bétise

    en fait j'avais repri (ok, mal repri) l'exemple de ktano.

    donc si on repart là dessus il me manque un .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    execute immediate 'select T.' || col ||'.' ||i || ' from T ' INTO val;
    Je crois qu'on est bon là !

  7. #7
    Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 41
    Points : 43
    Points
    43
    Par défaut
    Ok merci à tous.

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

Discussions similaires

  1. [AC-2013] Requete avec comme parametre des variables.
    Par NenciariniL dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 24/05/2015, 11h28
  2. requete avec plusieurs parametre
    Par otyv84 dans le forum Silverlight
    Réponses: 4
    Dernier message: 21/07/2010, 06h42
  3. [AC-2007] lancer une requete avec 2 parametres dans Access 2007 avec VBA
    Par dimis dans le forum VBA Access
    Réponses: 8
    Dernier message: 29/07/2009, 14h45
  4. Requete avec multi parametre
    Par discogarden dans le forum ASP.NET
    Réponses: 1
    Dernier message: 08/09/2008, 10h03
  5. Requete avec un parametre lié à un formulaire
    Par SabHHH dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 18/05/2008, 13h17

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