OVH Cloud OVH Cloud

EXECUTE IMMEDIATE

4 réponses
Avatar
Majid LAISSI
Bonjour,

j'ai une table avec les champs: "champ1", "champ2", "champ3" etc..
et une variable v qui contient le nom du champs à extraire: exemple
v="champs3"
je voudrais extraire le champs dont le nom est dans la variable v, ici
champs3 par exemple

j'ai regardé sur internet et j'ai vu qu'il fallait utiliser la commande
EXECUTE IMMEDIATE mais je ne sais pas comment

je vous remercie si vous pouviez m'aider

4 réponses

Avatar
Aba
Quelque chose comme cela devrait fonctionner :
DECLARE @PhraseSQL VARCHAR(500)
SET @PhraseSQL="SELECT "+v+" FROM Table"
EXECUTE(@PhraseSQL)


"Majid LAISSI" a écrit dans le message de
news:

Bonjour,

j'ai une table avec les champs: "champ1", "champ2", "champ3" etc..
et une variable v qui contient le nom du champs à extraire: exemple
v="champs3"
je voudrais extraire le champs dont le nom est dans la variable v, ici
champs3 par exemple

j'ai regardé sur internet et j'ai vu qu'il fallait utiliser la commande
EXECUTE IMMEDIATE mais je ne sais pas comment

je vous remercie si vous pouviez m'aider




Avatar
Majid LAISSI
Merci beaucoup :)



"Aba" a écrit dans le message de news:

Quelque chose comme cela devrait fonctionner :
DECLARE @PhraseSQL VARCHAR(500)
SET @PhraseSQL="SELECT "+v+" FROM Table"
EXECUTE(@PhraseSQL)


"Majid LAISSI" a écrit dans le message de
news:
>
> Bonjour,
>
> j'ai une table avec les champs: "champ1", "champ2", "champ3" etc..
> et une variable v qui contient le nom du champs à extraire: exemple
> v="champs3"
> je voudrais extraire le champs dont le nom est dans la variable v, ici
> champs3 par exemple
>
> j'ai regardé sur internet et j'ai vu qu'il fallait utiliser la commande
> EXECUTE IMMEDIATE mais je ne sais pas comment
>
> je vous remercie si vous pouviez m'aider
>
>




Avatar
Sylvain Lafontaine
S'il n'y a pas beaucoup de champ, un CASE pourrait également faire
l'affaire; surtout si on utilise une procédure compilée (pas besoin de
recompiler à chaque fois).

S. L.

"Aba" wrote in message
news:
Quelque chose comme cela devrait fonctionner :
DECLARE @PhraseSQL VARCHAR(500)
SET @PhraseSQL="SELECT "+v+" FROM Table"
EXECUTE(@PhraseSQL)


"Majid LAISSI" a écrit dans le message de
news:
>
> Bonjour,
>
> j'ai une table avec les champs: "champ1", "champ2", "champ3" etc..
> et une variable v qui contient le nom du champs à extraire: exemple
> v="champs3"
> je voudrais extraire le champs dont le nom est dans la variable v, ici
> champs3 par exemple
>
> j'ai regardé sur internet et j'ai vu qu'il fallait utiliser la commande
> EXECUTE IMMEDIATE mais je ne sais pas comment
>
> je vous remercie si vous pouviez m'aider
>
>




Avatar
Sylvain Lafontaine
S'il n'y a pas beaucoup de champ, un CASE pourrait également faire
l'affaire; surtout si on utilise une procédure compilée (pas besoin de
recompiler à chaque fois).

S. L.

"Aba" wrote in message
news:
Quelque chose comme cela devrait fonctionner :
DECLARE @PhraseSQL VARCHAR(500)
SET @PhraseSQL="SELECT "+v+" FROM Table"
EXECUTE(@PhraseSQL)


"Majid LAISSI" a écrit dans le message de
news:
>
> Bonjour,
>
> j'ai une table avec les champs: "champ1", "champ2", "champ3" etc..
> et une variable v qui contient le nom du champs à extraire: exemple
> v="champs3"
> je voudrais extraire le champs dont le nom est dans la variable v, ici
> champs3 par exemple
>
> j'ai regardé sur internet et j'ai vu qu'il fallait utiliser la commande
> EXECUTE IMMEDIATE mais je ne sais pas comment
>
> je vous remercie si vous pouviez m'aider
>
>